(function() {
    if (window.NEJ != null) return;
    window.NEJ = {
        O: {},
        R: [],
        F: function() {
            return ! 1
        }
    };
    NEJ.P = function(lN) {
        if (!lN || !lN.length) return null;
        var iR = window;
        for (var a = lN.split("."), l = a.length, i = a[0] == "window" ? 1 : 0; i < l; iR = iR[a[i]] = iR[a[i]] || {},
        i++);
        return iR
    };
    NEJ.C = function() {
        var mK = function() {
            return NEJ.O.toString.call(arguments[0]) != "[object Function]"
        };
        var Ej = function(zV, cS) {
            for (var x in cS) if (zV == cS[x]) return x;
            return null
        };
        var DP = {
            zW: 0,
            dD: 1,
            eF: 2,
            fD: 3
        },
        DO = {
            CU: 0,
            CH: 1,
            CI: 2,
            Ev: 3
        };
        return function() {
            var cR = function() {
                return this.zW.apply(this, arguments)
            };
            cR.prototype.zW = NEJ.F;
            cR.dy = function(gg, pe) {
                if (mK(gg)) return;
                if (pe == null || !!pe) NEJ.X(this, gg, mK);
                this.py = gg;
                this.dG = gg.prototype;
                var ey = function() {};
                ey.prototype = gg.prototype;
                this.prototype = new ey;
                var CX = this.prototype;
                CX.constructor = this;
                var nu;
                for (var x in DP) {
                    nu = Ej(DP[x], DO);
                    if (!nu || !this.dG[x]) continue;
                    CX[x] = function(cV) {
                        return function() {
                            this[cV].apply(this, arguments)
                        }
                    } (nu)
                }
                var CW = {};
                for (var x in DO) {
                    nu = Ej(DO[x], DP);
                    if (!nu || !this.dG[nu]) continue;
                    CW[nu] = gg;
                    CX[x] = function(cV) {
                        return function() {
                            var dp, ey = CW[cV],
                            Ei = ey.prototype[cV];
                            CW[cV] = ey.py || gg;
                            if ( !! Ei) dp = Ei.apply(this, arguments);
                            CW[cV] = gg;
                            return dp
                        }
                    } (nu)
                }
                CX.dQ = CX.CU;
                return CX
            };
            return cR
        }
    } ();
    NEJ.X = function(dd, eX, gV) {
        if (!dd || !eX) return;
        gV = gV || NEJ.F;
        for (var x in eX) if (!gV(eX[x], x)) dd[x] = eX[x];
        return dd
    };
    NEJ.EX = function(dd, eX) {
        if (!dd || !eX) return;
        for (var x in dd) if (eX[x] != null) dd[x] = eX[x];
        return dd
    };
    var Ai = Function.prototype;
    Ai.ed = function(lg, kK) {
        var f = NEJ.F,
        kK = kK || f,
        lg = lg || f,
        zX = this;
        return function() {
            var bX = {
                args: NEJ.R.slice.call(arguments, 0)
            };
            lg(bX);
            if (!bX.stopped) {
                bX.value = zX.apply(this, bX.args);
                kK(bX)
            }
            return bX.value
        }
    };
    Ai.cC = function() {
        var c$ = arguments,
        dd = arguments[0],
        kz = this;
        return function() {
            var mN = NEJ.R.slice.call(c$, 1);
            NEJ.R.push.apply(mN, arguments);
            return kz.apply(dd || window, mN)
        }
    };
    Ai.AP = function() {
        var c$ = arguments,
        dd = NEJ.R.shift.call(c$),
        kz = this;
        return function() {
            NEJ.R.push.apply(arguments, c$);
            return kz.apply(dd || window, arguments)
        }
    };
    var Ai = String.prototype;
    if (!Ai.trim) {
        Ai.trim = function() {
            var dt = /(?:^\s+)|(?:\s+$)/g;
            return function() {
                return this.replace(dt, "")
            }
        } ()
    }
    if (!window.MWF) window.MWF = NEJ;
    if (!window.mwf) window.mwf = NEJ.P("nej")
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    il = pW("nej.p"),
    Al = window.navigator.platform,
    fB = window.navigator.userAgent;
    var vt = {
        mac: Al,
        win: Al,
        linux: Al,
        ipad: fB,
        ipod: fB,
        iphone: Al,
        android: fB
    };
    il.dY = vt;
    for (var x in vt) vt[x] = (new RegExp(x, "i")).test(vt[x]);
    vt.ios = vt.ipad || vt.iphone || vt.ipod;
    vt.tablet = vt.ipad;
    vt.desktop = vt.mac || vt.win || vt.linux && !vt.android;
    var dr = {
        engine: "unknow",
        release: "unknow",
        browser: "unknow",
        version: "unknow",
        prefix: {
            css: "",
            pro: "",
            clz: ""
        },
        touch: {
            start: "mousedown",
            move: "mousemove",
            end: "mouseup"
        }
    };
    il.gN = dr;
    if (/msie\s+(.*?);/i.test(fB)) {
        dr.engine = "trident";
        dr.browser = "ie";
        dr.version = RegExp.$1;
        dr.prefix = {
            css: "ms",
            pro: "ms",
            clz: "MS",
            evt: "MS"
        };
        var gz = {
            6 : "2.0",
            7 : "3.0",
            8 : "4.0",
            9 : "5.0",
            10 : "6.0"
        };
        dr.release = gz[document.documentMode] || gz[parseInt(dr.version)];
        if (fB.indexOf("Touch") > 0) dr.touch = {
            start: "MSPointerDown",
            move: "MSPointerMove",
            end: "MSPointerUp",
            cancel: "MSPointerCancel"
        }
    } else if (/webkit\/?([\d.]+?)(?=\s|$)/i.test(fB)) {
        dr.engine = "webkit";
        dr.release = RegExp.$1 || "";
        dr.prefix = {
            css: "webkit",
            pro: "webkit",
            clz: "WebKit"
        }
    } else if (/rv\:(.*?)\)\s+gecko\//i.test(fB)) {
        dr.engine = "gecko";
        dr.release = RegExp.$1 || "";
        dr.browser = "firefox";
        dr.prefix = {
            css: "Moz",
            pro: "moz",
            clz: "Moz"
        };
        if (/firefox\/(.*?)(?=\s|$)/i.test(fB)) dr.version = RegExp.$1 || ""
    } else if (/presto\/(.*?)\s/i.test(fB)) {
        dr.engine = "presto";
        dr.release = RegExp.$1 || "";
        dr.browser = "opera";
        dr.prefix = {
            css: "O",
            pro: "o",
            clz: "O"
        };
        if (/version\/(.*?)(?=\s|$)/i.test(fB)) dr.version = RegExp.$1 || ""
    }
    if (dr.browser == "unknow") {
        var gz = ["chrome", "maxthon", "safari"];
        for (var i = 0,
        l = gz.length,
        cV; i < l; i++) {
            cV = gz[i] == "safari" ? "version": gz[i];
            if ((new RegExp(cV + "/(.*?)(?=\\s|$)", "i")).test(fB)) {
                dr.browser = gz[i];
                dr.version = RegExp.$1.trim();
                break
            }
        }
    }
    if ("ontouchstart" in window) {
        dr.touch = {
            start: "touchstart",
            move: "touchmove",
            end: "touchend",
            cancel: "touchcancel"
        }
    }
    il.kj = {};
    il.ig = {
        gecko: dr.engine != "gecko",
        webkit: dr.engine != "webkit",
        presto: dr.engine != "presto",
        trident: dr.engine != "trident" || dr.release >= "6.0",
        trident1: dr.engine != "trident" || dr.release < "6.0",
        trident2: dr.engine != "trident" || dr.release != "2.0"
    }
})(); (function() {
    var vv = NEJ.P("nej.c"),
    cE = {};
    var DN = function() {
        var dt = /^([\w]+?:\/\/.*?(?=\/|$))/i;
        return function(cU) {
            cU = cU || "";
            if (dt.test(cU)) return RegExp.$1;
            return location.protocol + "//" + location.host
        }
    } ();
    var EJ = function() {
        var El = function(cB, cS) {
            if (!cB || !cB.length) return;
            for (var i = 0,
            l = cB.length,
            Do; i < l; i++) {
                Do = cB[i];
                if (Do.indexOf("://") > 0) cS[DN(Do)] = Do
            }
        };
        return function(eX) {
            vv.mw("root", eX.root || "/res/");
            vv.mw("ajax.swf", eX.ajax || vv.cK("root") + "nej_proxy_flash.swf");
            vv.mw("clipboard.swf", eX.clipboard || vv.cK("root") + "nej_clipboard.swf");
            cE.frames = {};
            El(eX.p_frame, cE.frames);
            cE.flashs = {};
            El(eX.p_flash, cE.flashs)
        }
    } ();
    vv.mw = function(cD, zV) {
        cE[cD] = zV
    };
    vv.cK = function(cD) {
        return cE[cD]
    };
    vv.EL = function(cU) {
        var Ee = DN(cU);
        return cE.frames[Ee] || Ee + "/res/nej_proxy_frame.html"
    };
    vv.EP = function(cU) {
        return cE.flashs[DN(cU)]
    };
    EJ(window.NEJ_CONF || NEJ.O)
})(); (function() {
    var pW = NEJ.P,
    il = pW("nej.p"),
    vv = pW("nej.c"),
    eX = window.NEJ_CONF || NEJ.O;
    if (il.ig.trident) return;
    vv.mw("storage.swf", eX.storage || vv.cK("root") + "nej_storage.swf");
    if (il.gN.release < "4.0") {
        vv.mw("blank.png", eX.blank || vv.cK("root") + "nej_blank.gif")
    }
    var cB = eX.xdr,
    ii = /^(https?:\/\/.*?)(?=\/|$)/i,
    j_ = /[\/?=&]/i;
    var Ek = function(cU) {
        return (ii.test(cU) ? RegExp.$1: "").toLowerCase()
    };
    if ( !! cB && !!cB.length) for (var i = cB.length - 1,
    cU, cD; i >= 0; i--) {
        cU = cB[i];
        cD = Ek(cU);
        if ( !! cD) vv.mw(cD, cU)
    }
    vv.jY = function(cU) {
        var cD = Ek(cU);
        if (!cD) {
            if (j_.test(cU)) {
                cD = location.protocol + "//" + location.host
            } else if (cU.indexOf("://") < 0) {
                cD = location.protocol + "//" + cU
            } else {
                cD = cU
            }
        }
        return vv.cK(cD) || cD + "/res/nej_xdomain.html"
    }
})(); (function() {
    var pW = NEJ.P,
    vv = pW("nej.c"),
    il = pW("nej.g"),
    eg = +(new Date);
    il.FN = 1e4 - eg;
    il.jX = 10001 - eg;
    il.sZ = 10002 - eg;
    il.jW = 10003 - eg;
    il.pS = 10004 - eg;
    il.qi = 10005 - eg;
    il.fO = 10006 - eg;
    il.gJ = "Content-Type";
    il.qx = "text/plain";
    il.iH = "multipart/form-data";
    il.qK = "application/x-www-form-urlencoded";
    il.ri = vv.cK("blank.png") || ""
})(); (function() {
    var pW = NEJ.P,
    vL = NEJ.R,
    il = pW("nej.p"),
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    eE = pW("nej.h");
    var dx = il.gN.prefix,
    mY = il.kj,
    rm = {
        scale: "scale({x|1},{y|1})",
        rotate: "rotate({a})",
        translate: "translate({x},{y})"
    },
    ro = {
        scale: "scale3d({x|1},{y|1},{z|1})",
        rotate: "rotate3d({x},{y},{z},{a})",
        translate: "translate3d({x},{y},{z})"
    },
    iA = {
        transition: !0,
        transform: !0,
        animation: !0,
        keyframes: !0,
        box: !0,
        "box-pack": !0,
        "box-flex": !0,
        marquee: !0,
        "border-radius": !0,
        "user-select": !0
    };
    var zW = function() {
        var eI = eE.oD();
        mY.css3d = !!eI && eI.m41 != null;
        var dt = /-([a-z])/g;
        for (var x in iA) if (dt.test(x)) iA[x.replace(dt,
        function($1, $2) {
            return $2.toUpperCase()
        })] = iA[x]
    };
    var me = function(cV) {
        return (!mY.css3d ? rm: ro)[cV]
    };
    var mg = function() {
        var dt = /\s+/;
        return function(cR) {
            cR = (cR || "").trim();
            return !! cR ? cR.split(dt) : null
        }
    } ();
    var mh = function(_, cF, cR) {
        _ = dl.cK(_);
        if (!_) return;
        zB.rv(mg(cR),
        function(Ax) {
            _.classList[cF](Ax)
        })
    };
    eE.hd = function(cB) {
        return vL.slice.call(cB, 0)
    };
    eE.lz = function(_) {
        return eE.hd(_.children)
    };
    eE.li = function(_, cR) {
        return eE.hd(_.getElementsByClassName(cR))
    };
    eE.lh = function(_, k_) {
        return eE.hd(_.querySelectorAll(k_))
    };
    eE.wc = function(_, e_) {
        mh(_, "add", e_)
    };
    eE.wd = function(_, eZ) {
        mh(_, "remove", eZ)
    };
    eE.vE = function(_, eZ, e_) {
        mh(_, "remove", eZ);
        mh(_, "add", e_)
    };
    eE.we = function(_, cR) {
        _ = dl.cK(_);
        if (!_) return ! 1;
        var cB = _.classList;
        return zB.sI(mg(cR),
        function(Ax) {
            return cB.contains(Ax)
        }) >= 0
    };
    eE.DK = function(_, Ax) {};
    eE.DJ = function() {
        var DI = function(Ax, bX) {
            var _ = jn.dE(bX);
            if (!_.value) dl.nf(_, Ax)
        };
        var Fw = function(Ax, bX) {
            dl.dw(jn.dE(bX), Ax)
        };
        return function(_, CE, Ax) {
            if (CE == 1) {
                jn.cM(_, "blur", DI.cC(null, Ax))
            }
            if (CE == 1 || CE == -1) {
                jn.cM(_, "focus", Fw.cC(null, Ax))
            }
        }
    } ();
    eE.k$ = function(gH) {
        return (new XMLSerializer).serializeToString(gH) || ""
    };
    eE.kS = function(fS) {
        var np = (new DOMParser).parseFromString(fS, "text/xml").documentElement;
        return np.nodeName == "parsererror" ? null: np
    };
    eE.nq = function(_) {};
    eE.nC = function(_) {
        return null
    };
    eE.nF = function(_) {
        return null
    };
    eE.wp = function(hq) {};
    eE.iM = function() {
        var fL = {
            transitionend: "TransitionEnd"
        };
        return function() {
            var c$ = eE.hd(arguments);
            if ( !! fL[c$[1]]) c$[1] = (dx.evt || dx.pro) + fL[c$[1]];
            return c$
        }
    } ();
    eE.fT = function() {
        var c$ = arguments;
        c$[0].addEventListener(c$[1], c$[2], !!c$[3])
    };
    eE.gD = function() {
        var c$ = arguments;
        c$[0].removeEventListener(c$[1], c$[2], !!c$[3])
    };
    eE.DH = function(_, cF) {
        var bX = document.createEvent("Event");
        bX.initEvent(cF, !1, !1);
        _.dispatchEvent(bX)
    };
    eE.oD = function() {
        var ii = /\((.*?)\)/,
        j_ = /\s*,\s*/,
        cB = ["m11", "m12", "m21", "m22", "m41", "m42"];
        var rr = function(eI) {
            var cJ = {};
            if (ii.test(eI || "")) {
                zB.rv(RegExp.$1.split(j_),
                function(zV, cX) {
                    cJ[cB[cX]] = zV || ""
                })
            }
            return cJ
        };
        return function(eI) {
            if ( !! window.CSSMatrix) return new CSSMatrix(eI);
            var cV = dx.clz + "CSSMatrix";
            if ( !! window[cV]) return new window[cV](eI || "");
            return rr(eI)
        }
    } ();
    eE.AA = function() {
        var dt = /\{(.*?)\}/g;
        return function(cV, cS) {
            cS = cS || o;
            var iO = me(cV);
            return ! iO ? "": iO.replace(dt,
            function($1, $2) {
                var df = $2.split("|");
                return cS[df[0]] || df[1] || "0"
            })
        }
    } ();
    eE.DG = function(_, cV, zV) {
        _.style[eE.mk(cV)] = zV
    };
    eE.mk = function() {
        var dt = /^[a-z]/,
        kw = dx.css;
        var rt = function(cV) {
            return cV.replace(dt,
            function($1) {
                return kw + $1.toUpperCase()
            })
        };
        return function(cV) {
            return eE.rB(cV, iA) ? rt(cV) : cV
        }
    } ();
    eE.rB = function() {
        var dt = /^([a-z]+?)[A-Z]/;
        return function(cV, cS) {
            if (!cS[cV]) {
                if (dt.test(cV)) cV = RegExp.$1
            }
            return !! cS[cV]
        }
    } ();
    eE.rC = function() {
        var dt = /\$<(.*?)>/gi,
        kw = "-" + dx.css.toLowerCase() + "-";
        return function(fC) {
            return fC.replace(dt,
            function($1, $2) {
                var fE = $2,
                df = fE.split("|"),
                iO = me(df[0]);
                if ( !! iO) {
                    return eE.AA(df[0], zB.rF(df[1]))
                }
                return ! eE.rN(fE, iA) ? fE: kw + fE
            })
        }
    } ();
    eE.rN = function(cV, cS) {
        return !! cS[cV]
    };
    eE.kq = function(ej, fC) {
        ej.textContent = fC
    };
    eE.FC = function(_, cz) {};
    eE.FB = function(cQ) {
        return ! cQ.childNodes ? dl.ft(cQ) : cQ.childNodes
    };
    zW()
})(); (function() {
    var pW = NEJ.P,
    dl = pW("nej.e"),
    eE = pW("nej.h");
    var vN = function() {
        var gz = !!document.body.classList;
        return function() {
            return gz
        }
    } ();
    var mu = function() {
        var dt = /\s+/g;
        return function(cR) {
            cR = (cR || "").trim();
            return ! cR ? null: new RegExp("(\\s|^)(?:" + cR.replace(dt, "|") + ")(?=\\s|$)", "g")
        }
    } ();
    eE.vE = eE.vE.ed(function(bX) {
        if (vN()) return;
        bX.stopped = !0;
        var c$ = bX.args,
        _ = dl.cK(c$[0]);
        if (!_ || !c$[1] && !c$[2]) return;
        var cR = _.className || "";
        var e_ = " " + (c$[2] || ""),
        eZ = mu((c$[1] || "") + e_); !! eZ && (cR = cR.replace(eZ, "$1"));
        _.className = (cR + e_).replace(/\s+/g, " ").trim()
    });
    eE.wc = eE.wc.ed(function(bX) {
        if (vN()) return;
        bX.stopped = !0;
        var c$ = bX.args;
        eE.vE(c$[0], "", c$[1])
    });
    eE.wd = eE.wd.ed(function(bX) {
        if (vN()) return;
        bX.stopped = !0;
        var c$ = bX.args;
        eE.vE(c$[0], c$[1], "")
    });
    eE.we = eE.we.ed(function(bX) {
        if (vN()) return;
        bX.stopped = !0;
        var c$ = bX.args,
        _ = dl.cK(c$[0]);
        if (!_) {
            bX.value = !1;
            return
        }
        var dt = mu(c$[1]);
        bX.value = !dt ? !1 : dt.test(_.className || "")
    })
})(); (function() {
    var pW = NEJ.P,
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    jn = pW("nej.v"),
    il = pW("nej.p"),
    eE = pW("nej.h");
    if (il.ig.trident2) return;
    var eg = +(new Date);
    cE = {};
    eE.DK = eE.DK.ed(function(bX) {
        bX.stopped = !0;
        var c$ = bX.args,
        dU = dl.nx(c$[0]);
        jn.cM(dU, "mouseenter", dl.dw.cC(dl, dU, c$[1]));
        jn.cM(dU, "mouseleave", dl.nf.cC(dl, dU, c$[1]))
    });
    eE.nq = eE.nq.ed(function(bX) {
        bX.stopped = !0;
        var _ = bX.args[0],
        ej = _.style,
        mX = dl.wg();
        ej.width = mX.scrollWidth + "px";
        ej.height = mX.scrollHeight + "px"
    });
    eE.nC = eE.nC.ed(function(bX) {
        bX.stopped = !0;
        var _ = bX.args[0],
        fe = cE[_.msk];
        if (!fe) {
            _.msk = eg++;
            fe = dl.gy("iframe");
            fe.style.position = "absolute";
            cE[_.msk] = fe
        }
        bX.value = fe;
        var ej = fe.style;
        ej.top = (parseInt(dl.nA(_, "top")) || 0) + "px";
        ej.left = (parseInt(dl.nA(_, "left")) || 0) + "px";
        ej.width = _.offsetWidth + "px";
        ej.height = _.offsetHeight + "px";
        _.insertAdjacentElement("beforeBegin", fe)
    });
    eE.nF = eE.nF.ed(function(bX) {
        bX.stopped = !0;
        var fe = cE[bX.args[0].msk];
        if ( !! fe) dl.iT(fe)
    });
    eE.wp = function() {
        var wh, fm, vM = [],
        wi = "cb-" + +(new Date),
        cP = '<script>parent.nej.h["' + wi + '"] = !0;parent.location.hash = decodeURIComponent("#<HASH>");</scr' + "ipt>";
        var wm = function() {
            wh = window.clearTimeout(wh);
            if (!vM.length) return;
            var hq = vM.shift();
            try {
                var vz = fm.contentWindow.document;
                vz.open();
                vz.write("<head><title>");
                vz.write(document.title);
                vz.write("</title>");
                vz.write(cP.replace("#<HASH>", encodeURIComponent(hq)));
                vz.write("</head>");
                if (location.hostname != document.domain) vz.domain = document.domain;
                vz.close();
                eE[wi] = !1
            } catch(ex) {
                alert(ex.message || ex);
                vM.unshift(hq)
            }
            wh = window.setTimeout(wm, 50)
        };
        return eE.wp.ed(function(bX) {
            bX.stopped = !0;
            var hq = bX.args[0];
            if ( !! eE[wi] || !fm && !hq) return;
            vM.push(hq);
            if (!fm) fm = dl.wj();
            wm()
        })
    } ()
})(); (function() {
    var pW = NEJ.P,
    vy = NEJ.F,
    il = pW("nej.p"),
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    eE = pW("nej.h"),
    jS = {};
    if (il.ig.trident) return;
    var rV = function() {
        var fL = {
            input: "propertychange",
            load: "readystatechange"
        };
        for (var x in fL) jS[fL[x]] = !0;
        return function(cF, _) {
            if ("on" + cF in _) return "";
            return fL[cF] || ""
        }
    } ();
    var rY = function() {
        var fL = {},
        ly = {},
        eg = +(new Date);
        var AJ = function(bX) {
            for (var x in fL) {
                if (fL[x] == bX) return x
            }
        };
        var sv = function(cD, bX) {
            var _ = jn.dE(bX) || this;
            if (_.readyState == "loaded" || _.readyState == "complete") {
                bX.target = _; (fL[cD] || vy)(bX)
            }
        };
        return function(cF, bX) {
            switch (cF) {
            case "readystatechange":
                var cD = AJ(bX) || "key-" + eg++;
                if (!ly[cD]) {
                    fL[cD] = bX;
                    ly[cD] = sv.cC(null, cD)
                }
                bX = ly[cD];
                break
            }
            return bX
        }
    } ();
    eE.hd = eE.hd.ed(function(bX) {
        bX.stopped = !0;
        var cB = bX.args[0];
        if (!cB) {
            bX.value = null;
            return
        }
        var cX = 0,
        dp = [];
        while ( !! cB[cX]) {
            dp.push(cB[cX++])
        }
        bX.value = dp
    });
    eE.lz = eE.lz.ed(function(bX) {
        var _ = bX.args[0];
        if ( !! _.children) return;
        bX.stopped = !0;
        var df = [];
        zB.rv(_.childNodes,
        function(cQ) {
            if (cQ.nodeType == 1) df.push(cQ)
        });
        bX.value = df
    });
    eE.li = eE.li.ed(function(bX) {
        var _ = bX.args[0];
        if ( !! _.getElementsByClassName) return;
        bX.stopped = !0;
        var dp = [],
        su = new RegExp("(\\s|^)(?:" + bX.args[1].replace(/\s+/g, "|") + ")(?=\\s|$)");
        zB.rv(_.getElementsByTagName("*"),
        function(cQ) {
            if (su.test(cQ.className)) dp.push(cQ)
        });
        bX.value = dp
    });
    eE.lh = eE.lh.ed(function(bX) {
        var _ = bX.args[0];
        if ( !! _.querySelectorAll) return;
        bX.stopped = !0
    });
    eE.k$ = eE.k$.ed(function(bX) {
        if ( !! window.XMLSerializer) return;
        bX.stopped = !0;
        var _ = bX.args[0];
        bX.value = _.xml != null ? _.xml: _.outHTML
    });
    eE.kS = function() {
        var hG = ["Msxml2.DOMDocument.6.0", "Msxml2.DOMDocument.3.0"];
        var sr = function() {
            try {
                for (var i = 0,
                l = hG.length; i < l; i++) return new ActiveXObject(hG[i])
            } catch(ex) {
                return null
            }
        };
        return eE.kS.ed(function(bX) {
            if ( !! window.DOMParser) return;
            bX.stopped = !0;
            var iV = sr();
            if ( !! iV && iV.loadXML(bX.args[0]) && !iV.parseError.errorCode) bX.value = iV.documentElement
        })
    } ();
    eE.iM = eE.iM.ed(function(bX) {
        var c$ = bX.args,
        cF = rV(c$[1], c$[0]);
        if ( !! cF) {
            bX.stopped = !0;
            c$[1] = cF;
            if ( !! c$[2]) c$[2] = rY(cF, c$[2]);
            bX.value = c$
        }
    });
    eE.fT = eE.fT.ed(function(bX) {
        var c$ = bX.args;
        if ( !! jS[c$[1]] || !document.addEventListener) {
            bX.stopped = !0;
            c$[0].attachEvent("on" + c$[1], c$[2])
        }
    });
    eE.gD = eE.gD.ed(function(bX) {
        var c$ = bX.args;
        if ( !! jS[c$[1]] || !document.removeEventListener) {
            bX.stopped = !0;
            c$[0].detachEvent("on" + c$[1], c$[2])
        }
    });
    eE.DH = eE.DH.ed(function(bX) {
        if ( !! document.createEvent) return;
        bX.stopped = !0;
        var c$ = bX.args;
        c$[0].fireEvent("on" + c$[1], document.createEventObject())
    });
    eE.DG = eE.DG.ed(function(bX) {
        var c$ = bX.args;
        if (c$[1].toLowerCase() == "opacity") {
            c$[1] = "filter";
            c$[2] = "alpha(opacity=" + c$[2] * 100 + ")"
        }
    });
    eE.kq = function() {
        var gP = 30;
        return eE.kq.ed(function(bX) {
            var _ = bX.args[0];
            if (!_.styleSheet) return;
            bX.stopped = !0;
            var fC = bX.args[1];
            var cB = document.styleSheets;
            if (cB.length > gP) {
                _ = cB[gP];
                fC = _.cssText + fC
            } else {
                _ = _.styleSheet
            }
            _.cssText = fC
        })
    } ();
    eE.DJ = function() {
        var DI = function(Ax, bX) {
            dl.nf(jn.dE(bX), Ax)
        };
        return eE.DJ.ed(function(bX) {
            if (il.gN.release >= "4.0") return;
            var c$ = bX.args;
            if (c$[1] != 1) {
                jn.cM(c$[0], "blur", DI.cC(null, c$[2]));
                c$[1] = -1
            }
        })
    } ();
    try {
        document.execCommand("BackgroundImageCache", !1, !0)
    } catch(e) {}
})(); (function() {
    var pW = NEJ.P,
    eE = pW("nej.h"),
    il = NEJ.P("nej.p");
    if (il.ig.gecko) return;
    eE.iM = eE.iM.ed(function(bX) {
        var c$ = bX.args;
        if (c$[1] == "transitionend") {
            bX.stopped = !0;
            bX.value = c$
        }
    });
    if (!document.body.insertAdjacentElement) HTMLElement.prototype.insertAdjacentElement = function(mJ, _) {
        if (!mJ || !_) return;
        switch (mJ) {
        case "beforeEnd":
            this.appendChild(_);
            return;
        case "beforeBegin":
            this.parentNode.insertBefore(_, this);
            return;
        case "afterBegin":
            !this.firstChild ? this.appendChild(_) : this.insertBefore(_, this.firstChild);
            return;
        case "afterEnd":
            !this.nextSibling ? this.parentNode.appendChild(_) : this.parentNode.insertBefore(_, this.nextSibling);
            return
        }
    };
    if (! ("innerText" in document.body)) {
        HTMLElement.prototype["__defineGetter__"]("innerText",
        function() {
            return this.textContent
        });
        HTMLElement.prototype["__defineSetter__"]("innerText",
        function(cP) {
            this.textContent = cP
        })
    }
})(); (function() {
    var pW = NEJ.P,
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    Dn = pW("nej.p"),
    eE = pW("nej.h"),
    il = pW("nej.ut"),
    CO,
    CN;
    il.gM = NEJ.C();
    CO = il.gM.prototype;
    il.gM.ep = function() {
        if (!this.gm) this.gm = new this;
        return this.gm
    };
    CO.zW = function() {
        this.dj = {}
    };
    CO.sp = function(_, cF, bX, ei) {
        var dU = dl.nx(_),
        cE = this.dj[dU],
        dd = {
            f: bX,
            c: ei
        };
        if (!cE) {
            cE = {};
            this.dj[dU] = cE
        }
        if (!cE[cF]) cE[cF] = [];
        cE[cF].push(dd)
    };
    CO.so = function(_, cF, bX, ei) {
        _ = dl.cK(_);
        if (!_) return;
        var cE = this.dj[_.id];
        if (!cE) return;
        var dN = cE[cF];
        if (!dN) return;
        zB.wV(dN,
        function(dd, cX, cB) {
            if (dd.f == bX && !!dd.c == !!ei) cB.splice(cX, 1)
        });
        if (!dN.length) delete cE[cF]
    };
    CO.cM = function(_, cF, bX, ei) {
        _ = dl.cK(_);
        if (!_ || !cF || !zB.fY(bX)) return;
        ei = !!ei;
        var c$ = eE.iM.call(eE, _, cF, bX, ei);
        this.sp.apply(this, c$);
        this.fT.apply(this, c$)
    };
    CO.fT = function() {
        eE.fT.apply(eE, arguments)
    };
    CO.hi = function(_, cF, bX, ei) {
        _ = dl.cK(_);
        if (!_ || !cF || !zB.fY(bX)) return;
        var c$ = eE.iM.apply(eE, arguments);
        this.gD.apply(this, c$);
        this.so.apply(this, c$)
    };
    CO.gD = function() {
        eE.gD.apply(eE, arguments)
    };
    CO.fJ = function(_, cF) {
        _ = dl.cK(_);
        if (!_) return;
        var cE = this.dj[_.id];
        if (!cE) return;
        if ( !! cF) {
            var c$ = eE.iM.apply(eE, arguments),
            cF = c$[1],
            dN = cE[cF];
            if (!dN) return;
            var dd;
            while (dN.length) {
                dd = dN.pop();
                this.gD(_, cF, dd.f, dd.c)
            }
            delete cE[cF];
            return
        }
        for (var x in cE) jn.fJ(_, x)
    };
    il.i$ = NEJ.C();
    CN = il.i$.dy(il.gM);
    CN.zW = function() {
        this.CU();
        this.jd = {};
        this.ih = {}
    };
    CN.eh = function() {
        var lT = !1;
        return function() {
            if ( !! lT) return;
            lT = !0;
            zB.wN(Dn.gN.touch,
            function(cV, cD) {
                eE.fT(document, cV, this.sl.cC(this, "ontouch" + cD), !1)
            },
            this);
            eE.fT(document, "click", this.si.cC(this), !0)
        }
    } ();
    CN.sO = function(cF, cR) {
        this.eh();
        var dv = cR.ep();
        if (! (dv instanceof il.sy)) return;
        var dN = dv.AS() || [cF];
        zB.rv(dN,
        function(bX) {
            this.jd[bX.toLowerCase()] = cF
        },
        this);
        this.ih[cF] = dv
    };
    CN.mj = function(cF) {
        return !! this.jd[(cF || "").toLowerCase()]
    };
    CN.fT = function(_, cF, bX, ei) {
        cF = (cF || "").toLowerCase();
        var dv = this.ih[this.jd[cF]];
        if ( !! dv) dv.sA(_, cF, bX, ei)
    };
    CN.gD = function(_, cF, bX, ei) {
        cF = (cF || "").toLowerCase();
        var dv = this.ih[this.jd[cF]];
        if ( !! dv) dv.sB(_, cF, bX, ei)
    };
    CN.FA = function(bX) {
        var _ = jn.dE(bX),
        DT = _.tagName.toLowerCase();
        if (DT == "textarea" || DT == "input" && _.type == "text") return ! 0;
        return ! 1
    };
    CN.sl = function(cF, bX) {
        var mr = [],
        gd = jn.dE(bX);
        this.mv = bX;
        while ( !! gd) {
            if ( !! this.dj[gd.id]) mr.unshift(gd);
            gd = gd.parentNode
        }
        var cz = {
            e: bX,
            t: mr
        };
        for (var x in this.ih) {
            this.ih[x].dR(cF, cz)
        }
        if (bX.defaulted) this.mz = !0
    };
    CN.si = function(bX) {
        if (this.mz) {
            this.mz = !1;
            jn.hR(bX)
        }
        if (this.mv && this.mv.propagated) jn.mD(bX)
    };
    jn.cM = function(_, cF, bX, ei) {
        var e$ = il.i$.ep();
        e$ = e$.mj(cF) ? e$: il.gM.ep();
        e$.cM.apply(e$, arguments);
        return this
    };
    jn.hi = function(_, cF, bX, ei) {
        var e$ = il.i$.ep();
        e$ = e$.mj(cF) ? e$: il.gM.ep();
        e$.hi.apply(e$, arguments);
        return this
    };
    jn.fJ = function(_, cF) {
        il.gM.ep().fJ(_, cF);
        il.i$.ep().fJ(_, cF);
        return this
    };
    jn.dE = function(bX) {
        if (!bX) return null;
        var _ = bX.target || bX.srcElement;
        if (!arguments[1] || !zB.fY(arguments[1])) return _;
        while (_) {
            if ( !! arguments[1](_)) return _;
            _ = _.parentNode
        }
        return null
    };
    jn.dP = function(bX) {
        jn.mD(bX);
        jn.hR(bX);
        return this
    };
    jn.mD = function(bX) {
        if ( !! bX) {
            bX.propagated = !0; !! bX.stopPropagation ? bX.stopPropagation() : bX.cancelBubble = !0
        }
        return this
    };
    jn.hR = function(bX) {
        if ( !! bX) {
            bX.defaulted = !0; !! bX.preventDefault ? bX.preventDefault() : bX.returnValue = !1
        }
    };
    jn.sC = function(bX) {
        return bX.pageX != null ? bX.pageX: bX.clientX + dl.wg().scrollLeft
    };
    jn.sD = function(bX) {
        return bX.pageY != null ? bX.pageY: bX.clientY + dl.wg().scrollTop
    };
    jn.dR = function(_, cF) {
        var _ = dl.cK(_);
        if (!_) return;
        eE.DH(_, cF);
        return this
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    rl = pW("nej.g"),
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    jn = pW("nej.v"),
    eE = pW("nej.h"),
    gO,
    lB = {},
    cE = document.createDocumentFragment();
    dl.nx = function(_) {
        _ = dl.cK(_);
        if (!_) return;
        var dU = !!_.id ? _.id: "auto-id-" + zB.rU(8);
        _.id = dU;
        if (dl.cK(dU) != _) lB[dU] = _;
        return dU
    };
    dl.cK = function(_) {
        var cQ = lB[_];
        if ( !! cQ) return cQ;
        if (!zB.hz(_) && !zB.mU(_)) return _;
        return document.getElementById(_)
    };
    dl.ft = function(_, Ax) {
        _ = dl.cK(_);
        if (!_) return null;
        var cB = eE.lz(_);
        if ( !! Ax) zB.wV(cB,
        function(cQ, cX) {
            if (!dl.fP(cQ, Ax)) cB.splice(cX, 1)
        });
        return cB
    };
    dl.cT = function(_, cR) {
        _ = dl.cK(_);
        return ! _ ? null: eE.li(_, cR.trim())
    };
    dl.rO = function(_) {
        _ = dl.cK(_);
        if ( !! _) {
            _ = _.parentNode;
            while ( !! _) {
                if (_.scrollHeight > _.clientHeight) break;
                _ = _.parentNode
            }
            if ( !! _) return _
        }
        var rT = document.body.scrollHeight,
        rS = document.documentElement.scrollHeight;
        return rS >= rT ? document.documentElement: document.body
    };
    dl.wg = function() {
        var vB = document.body,
        vA = document.documentElement,
        dp = {
            scrollTop: Math.max(vB.scrollTop, vA.scrollTop),
            scrollLeft: Math.max(vB.scrollLeft, vA.scrollLeft),
            clientWidth: Math.max(vB.clientWidth, vB.offsetWidth, vA.clientWidth, vA.offsetWidth),
            clientHeight: Math.max(vB.clientHeight, vB.offsetHeight, vA.clientHeight, vA.offsetHeight)
        };
        dp.scrollWidth = Math.max(dp.clientWidth, vB.scrollWidth, vA.scrollWidth);
        dp.scrollHeight = Math.max(dp.clientHeight, vB.scrollHeight, vA.scrollHeight);
        return dp
    };
    dl.d_ = function(k_, _) {
        return eE.lh(dl.cK(_) || document, k_)
    };
    dl.FD = function(_, Ax) {
        eE.DK(_, Ax || dl.gl(_, "hover") || "js-hover");
        return this
    };
    dl.FE = function(_, cz) {
        _ = dl.cK(_);
        if (!_) return;
        var CE = 0,
        Ax = "js-focus";
        if (zB.mU(cz)) {
            CE = cz
        } else if (zB.hz(cz)) {
            Ax = cz
        } else if (zB.mB(cz)) {
            CE = cz.mode || CE;
            Ax = cz.clazz || Ax
        }
        var zV = parseInt(dl.gl(_, "mode"));
        if (!isNaN(zV)) CE = zV;
        zV = dl.gl(_, "focus");
        if ( !! zV) Ax = zV;
        eE.DJ(_, CE, Ax);
        return this
    };
    dl.gy = function() {
        var cS = {
            a: {
                href: "#",
                hideFocus: !0
            },
            style: {
                type: "text/css"
            },
            link: {
                type: "text/css",
                rel: "stylesheet"
            },
            iframe: {
                frameBorder: 0
            },
            script: {
                defer: !0,
                type: "text/javascript"
            }
        };
        return function(hy, cR, ey) {
            var _ = document.createElement(hy);
            NEJ.X(_, cS[hy.toLowerCase()]);
            if ( !! cR) _.className = cR;
            ey = dl.cK(ey);
            if ( !! ey) ey.appendChild(_);
            return _
        }
    } ();
    dl.wj = function() {
        var wL = function() {
            if (location.hostname == document.domain) return "about:blank";
            return 'javascript:(function(){document.open();document.domain="' + document.domain + '";document.close();})();'
        };
        var wK = function(cV) {
            cV = cV.trim();
            if (!cV) return dl.gy("iframe");
            var fm;
            try {
                fm = document.createElement('<iframe name="' + cV + '"></iframe>');
                fm.frameBorder = 0
            } catch(ex) {
                fm = dl.gy("iframe");
                fm.name = cV
            }
            return fm
        };
        return function(cz) {
            cz = cz || ll;
            var fm = wK(cz.name || "");
            if (!cz.visible) fm.style.display = "none";
            if (zB.fY(cz.onload)) jn.cM(fm, "load",
            function(bX) {
                if (!fm.src) return;
                jn.fJ(fm, "load");
                cz.onload(bX)
            });
            var ey = cz.parent;
            if (zB.fY(ey)) {
                try {
                    ey(fm)
                } catch(e) {}
            } else { (dl.cK(ey) || document.body).appendChild(fm)
            }
            var eJ = cz.src || wL();
            window.setTimeout(function() {
                fm.src = eJ
            },
            0);
            return fm
        }
    } ();
    dl.fk = function() {
        var wq = function(us) {
            us.src = rl.ri
        };
        var wr = function(fo) {
            fo.src = "about:blank"
        };
        return function(_, rR) {
            _ = dl.cK(_);
            if (!_) return this;
            if (!rR) jn.fJ(_);
            delete lB[_.id];
            var hy = _.tagName;
            if (hy == "IFRAME") {
                wr(_)
            } else if (hy == "IMG") {
                wq(_)
            } else if ( !! _.getElementsByTagName) {
                zB.rv(_.getElementsByTagName("img"), wq);
                zB.rv(_.getElementsByTagName("iframe"), wr)
            }
            if (!_.parentNode) return this;
            _.parentNode.removeChild(_);
            return this
        }
    } ();
    dl.iT = function(_) {
        _ = dl.cK(_);
        if ( !! _) cE.appendChild(_);
        return this
    };
    dl.FF = function() {
        var Ax;
        var Fz = function() {
            if ( !! Ax) return;
            Ax = dl.fR(".#<uispace>{position:relative;zoom:1;}.#<uispace>-show{position:absolute;top:0;left:0;cursor:text;overflow:hidden;}");
            dl.rK()
        };
        return function(_, cz) {
            _ = dl.cK(_);
            if (!_) return;
            Fz();
            cz = cz || ll;
            var ey = _.parentNode;
            if (!dl.fP(ey, Ax)) {
                ey = dl.gy("span", Ax);
                _.insertAdjacentElement("beforeBegin", ey);
                ey.appendChild(_)
            }
            var DR = cz.nid || "",
            cQ = dl.cT(ey, DR || Ax + "-show")[0];
            if (!cQ) {
                var Dm = ((cz.clazz || "") + " " + DR).trim();
                Dm = Ax + "-show" + (!Dm ? "": " ") + Dm;
                cQ = dl.gy(cz.tag || "span", Dm);
                ey.appendChild(cQ)
            }
            return cQ
        }
    } ();
    dl.gl = function() {
        var kn = {},
        hy = "data-",
        dt = /\-(.{1})/gi;
        var jz = function(_) {
            var dU = dl.nx(_);
            if ( !! kn[dU]) return;
            var cS = {};
            zB.rv(_.attributes,
            function(cQ) {
                var cD = cQ.nodeName;
                if (cD.indexOf(hy) != 0) return;
                cD = cD.replace(hy, "").replace(dt,
                function($1, $2) {
                    return $2.toUpperCase()
                });
                cS[cD] = cQ.nodeValue || ""
            });
            kn[dU] = cS
        };
        return function(_, cD, zV) {
            _ = dl.cK(_);
            if (!_) return null;
            var jv = _.dataset;
            if (!jv) {
                jz(_);
                jv = kn[_.id]
            }
            if (zV !== undefined) jv[cD] = zV;
            return jv[cD]
        }
    } ();
    dl.FG = function(_, cV) {
        _ = dl.cK(_);
        return ! _ ? "": _.getAttribute(cV) || ""
    };
    dl.fH = function(dV) {
        var gw = document.createElement("div");
        gw.innerHTML = dV;
        var cB = dl.ft(gw);
        return cB.length > 1 ? gw: cB[0]
    };
    dl.sE = function(_) {
        _ = dl.cK(_);
        return ! _ ? "": eE.k$(_)
    };
    dl.zz = function(fS) {
        fS = (fS || "").trim();
        return ! fS ? null: eE.kS(fS)
    };
    dl.Fy = function(fu, cF) {
        fu = fu || "";
        switch (cF) {
        case "xml":
            return dl.zz(fu);
        case "json":
            return dl.l_("return " + fu)
        }
        return fu
    };
    dl.sF = function() {
        var Fx = function(_) {
            return _ == document.body || _ == document.documentElement
        };
        return function(fp, jP) {
            fp = dl.cK(fp);
            if (!fp) return null;
            jP = dl.cK(jP) || null;
            var dp = {
                x: 0,
                y: 0
            },
            DC,
            jt;
            while ( !! fp && fp != jP) {
                DC = Fx(fp);
                jt = DC ? 0 : fp.scrollLeft;
                dp.x += fp.offsetLeft - jt;
                jt = DC ? 0 : fp.scrollTop;
                dp.y += fp.offsetTop - jt;
                fp = fp.offsetParent
            }
            return dp
        }
    } ();
    dl.xk = function(_) {
        var hr = dl.sF(_);
        window.scrollTo(hr.x, hr.y);
        return this
    };
    dl.FH = function(_, cz) {
        _ = dl.cK(_);
        if (!_ || !cz) return
    };
    dl.sG = function(eI) {
        eI = (eI || "").trim();
        return eE.oD(eI)
    };
    dl.sH = function(_, cV, cS) {
        _ = dl.cK(_);
        if (!_) return this;
        var zV = eE.AA(cV, cS);
        if (!zV) return this;
        dl.hh(_, "transform", zV);
        return this
    };
    dl.FI = function(_, cS) {
        _ = dl.cK(_);
        if ( !! _) zB.wN(cS,
        function(zV, cV) {
            dl.hh(_, cV, zV)
        });
        return this
    };
    dl.hh = function(_, cV, zV) {
        _ = dl.cK(_);
        if ( !! _) eE.DG(_, cV, zV);
        return this
    };
    dl.nA = function(_, cV) {
        _ = dl.cK(_);
        if (!_) return "";
        var rM = !window.getComputedStyle ? _.currentStyle || ll: window.getComputedStyle(_, null);
        return rM[eE.mk(cV)] || ""
    };
    dl.l$ = function() {
        var dt = /[\s\r\n]+/gi;
        return function(ej) {
            ej = (ej || "").trim().replace(dt, " ");
            if (!ej) return;
            var cQ = dl.gy("style");
            document.head.appendChild(cQ);
            eE.kq(cQ, eE.rC(ej));
            return this
        }
    } ();
    dl.l_ = function(gG) {
        gG = (gG || "").trim();
        if (!gG) return;
        try {
            return (new Function(gG))()
        } catch(ex) {}
    };
    dl.fR = function() {
        var dt = /#<.*?>/g,
        eg = +(new Date);
        return function(fC) {
            if (!gO) gO = [];
            var cR = "auto-" + eg++;
            gO.push(fC.replace(dt, cR));
            return cR
        }
    } ();
    dl.rK = function() {
        if (!gO) return;
        dl.l$(gO.join(""));
        gO = null;
        return this
    };
    dl.dw = function(_, e_) {
        eE.wc.apply(eE, arguments);
        return this
    };
    dl.nf = function(_, eZ) {
        eE.wd.apply(eE, arguments);
        return this
    };
    dl.lc = function(_, eZ, e_) {
        eE.vE.apply(eE, arguments);
        return this
    };
    dl.fP = function(_, cR) {
        return eE.we.apply(eE, arguments)
    };
    if (!document.head) document.head = document.getElementsByTagName("head")[0] || document.body
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    vL = NEJ.R,
    vy = NEJ.F,
    dl = pW("nej.e"),
    eE = pW("nej.h"),
    zB = pW("nej.u");
    var CS = function(cA, cF) {
        try {
            cF = cF.toLowerCase();
            if (cA === null) return cF == "null";
            if (cA === undefined) return cF == "undefined";
            return ll.toString.call(cA).toLowerCase() == "[object " + cF + "]"
        } catch(e) {
            return ! 1
        }
    };
    zB.fY = function(cA) {
        return CS(cA, "function")
    };
    zB.hz = function(cA) {
        return CS(cA, "string")
    };
    zB.mU = function(cA) {
        return CS(cA, "number")
    };
    zB.rJ = function(cA) {
        return CS(cA, "boolean")
    };
    zB.my = function(cA) {
        return CS(cA, "date")
    };
    zB.kl = function(cA) {
        return CS(cA, "array")
    };
    zB.mB = function(cA) {
        return CS(cA, "object")
    };
    zB.FJ = function() {
        var dt = /[^\x00-\xfff]/g;
        return function(cP) {
            return ("" + (cP || "")).replace(dt, "**").length
        }
    } ();
    zB.sI = function(cB, ek) {
        var gV = zB.fY(ek) ? ek: function(zV) {
            return zV === ek
        },
        cX = zB.wN(cB, gV);
        return cX != null ? cX: -1
    };
    zB.xl = function() {
        var mH;
        var DB = function(cB, kI, kW) {
            if (kI > kW) return - 1;
            var jM = Math.ceil((kI + kW) / 2),
            dp = mH(cB[jM]);
            if (dp == 0) return jM;
            if (dp < 0) return DB(cB, kI, jM - 1);
            return DB(cB, jM + 1, kW)
        };
        return function(cB, rz) {
            mH = rz || vy;
            return DB(cB, 0, cB.length - 1)
        }
    } ();
    zB.wV = function(cB, ef, lx) {
        if (!cB || !cB.length || !zB.fY(ef)) return null;
        for (var i = cB.length - 1; i >= 0; i--) if ( !! ef.call(lx, cB[i], i, cB)) return i;
        return null
    };
    zB.rv = function(cB, ef, lx) {
        if (!cB || !cB.length || !zB.fY(ef)) return this;
        if ( !! cB.forEach) {
            cB.forEach(ef, lx);
            return this
        }
        for (var i = 0,
        l = cB.length; i < l; i++) ef.call(lx, cB[i], i, cB);
        return this
    };
    zB.wN = function(cB, ef, lx) {
        if (!cB || !zB.fY(ef)) return null;
        if (zB.kl(cB)) {
            if (cB.length > 0) for (var i = 0,
            l = cB.length; i < l; i++) if ( !! ef.call(lx, cB[i], i, cB)) return i
        }
        if (zB.mB(cB)) {
            for (var x in cB) if ( !! ef.call(lx, cB[x], x, cB)) return x
        }
        return null
    };
    zB.FK = function(CV, Fv, cz) {
        CV = CV || [];
        cz = cz || ll;
        var Eq = !!cz.union,
        hv = !!cz.begin,
        Dl = cz.compare,
        Fu = Eq && hv ? zB.wV: zB.rv;
        Fu(Fv,
        function(ek) {
            if ( !! Dl) Dl = Dl.AP(ek);
            var cX = zB.sI(CV, Dl || ek);
            if (cX >= 0) CV.splice(cX, 1);
            if (Eq) CV[hv ? "unshift": "push"](ek)
        });
        return CV
    };
    zB.jK = function(cS, cP) {
        if (!cS || !cP || !cP.replace) return cP || "";
        return cP.replace(cS.r,
        function($1) {
            var dp = cS[!cS.i ? $1.toLowerCase() : $1];
            return dp != null ? dp: $1
        })
    };
    zB.rx = function() {
        var cS = {
            r: /\<|\>|\&|\r|\n|\s|\'|\"/g,
            "<": "&lt;",
            ">": "&gt;",
            "&": "&amp;",
            " ": "&nbsp;",
            '"': "&quot;",
            "'": "&#39;",
            "\n": "<br/>",
            "\r": ""
        };
        return function(cP) {
            return zB.jK(cS, cP)
        }
    } ();
    zB.sM = function() {
        var cS = {
            r: /\&(?:lt|gt|amp|nbsp|#39|quot)\;|\<br\/\>/gi,
            "&lt;": "<",
            "&gt;": ">",
            "&amp;": "&",
            "&nbsp;": " ",
            "&#39;": "'",
            "&quot;": '"',
            "<br/>": "\n"
        };
        return function(cP) {
            return zB.jK(cS, cP)
        }
    } ();
    zB.rs = function() {
        var cS = {
            i: !0,
            r: /\byyyy|yy|MM|M|dd|d|HH|H|mm|ms|ss|m|s\b/g
        };
        var hX = function(jJ) {
            jJ = parseInt(jJ) || 0;
            return (jJ < 10 ? "0": "") + jJ
        };
        return function(c_, Ay) {
            if (!c_ || !Ay) return "";
            c_ = zB.Ft(c_);
            cS["yyyy"] = c_.getFullYear();
            cS["yy"] = ("" + cS["yyyy"]).substr(2);
            cS["M"] = c_.getMonth() + 1;
            cS["MM"] = hX(cS["M"]);
            cS["d"] = c_.getDate();
            cS["dd"] = hX(cS["d"]);
            cS["H"] = c_.getHours();
            cS["HH"] = hX(cS["H"]);
            cS["m"] = c_.getMinutes();
            cS["mm"] = hX(cS["m"]);
            cS["s"] = c_.getSeconds();
            cS["ss"] = hX(cS["s"]);
            cS["ms"] = c_.getMilliseconds();
            return zB.jK(cS, Ay)
        }
    } ();
    zB.Ft = function(c_) {
        var kv = c_;
        if (zB.hz(c_)) kv = new Date(Date.parse(c_));
        if (!zB.my(c_)) kv = new Date(c_);
        return kv
    };
    zB.sN = function(rq, rp) {
        return (new Number(rq)).toFixed(rp)
    };
    zB.tf = function() {
        var ii = /([^\/:])\/.*$/,
        j_ = /\/[^\/]+$/,
        Fs = /[#\?]/,
        rn = location.href.split(/[?#]/)[0],
        ky = document.createElement("a");
        var Dz = function(eS) {
            return (eS || "").indexOf("://") > 0
        };
        var DY = function(eS) {
            return (eS || "").split(Fs)[0].replace(j_, "/")
        };
        var Fr = function(eS, np) {
            if (eS.indexOf("/") == 0) return np.replace(ii, "$1") + eS;
            return DY(np) + eS
        };
        rn = DY(rn);
        return function(eS, np) {
            eS = (eS || "").trim();
            if (!Dz(np)) np = rn;
            if (!eS) return np;
            if (Dz(eS)) return eS;
            eS = Fr(eS, np);
            ky.href = eS;
            eS = ky.href;
            return Dz(eS) ? eS: ky.getAttribute("href", 4)
        }
    } ();
    zB.Fq = function() {
        var dt = /^([\w]+?:\/\/.*?(?=\/|$))/i;
        return function(cU) {
            if (dt.test(cU || "")) return RegExp.$1.toLowerCase();
            return ""
        }
    } ();
    zB.nt = function(gH, cJ) {
        if (!gH) return cJ;
        var _ = gH.firstElementChild;
        if (!_) {
            cJ[gH.tagName.toLowerCase()] = gH.textContent || "";
            return cJ
        }
        var nu = {};
        while (_) {
            zB.nt(_, nu);
            _ = _.nextElementSibling
        }
        cJ[gH.tagName.toLowerCase()] = nu;
        return cJ
    };
    zB.sP = function(fS) {
        try {
            return zB.nt(dl.zz(fS), {})
        } catch(ex) {
            return null
        }
    };
    zB.hP = function(jZ, As) {
        var cJ = {};
        zB.rv((jZ || "").split(As),
        function(cV) {
            var hU = cV.split("=");
            if (!hU || !hU.length) return;
            var cD = hU.shift();
            if (!cD) return;
            cJ[decodeURIComponent(cD)] = decodeURIComponent(hU.join("="))
        });
        return cJ
    };
    zB.nH = function(dd, As, rk) {
        if (!dd) return "";
        var df = [];
        for (var x in dd) {
            df.push(encodeURIComponent(x) + "=" + ( !! rk ? encodeURIComponent(dd[x]) : dd[x]))
        }
        return df.join(As || ",")
    };
    zB.rF = function(fF) {
        return zB.hP(fF, "&")
    };
    zB.nL = function(dd) {
        return zB.nH(dd, "&", !0)
    };
    zB.sQ = function(dd) {
        return eE.hd(dd)
    };
    zB.wO = function(dd, cV) {
        if (!zB.kl(cV)) {
            try {
                delete dd[cV]
            } catch(e) {
                dd[cV] = undefined
            }
            return this
        }
        zB.rv(cV, zB.wO.cC(zB, dd))
    };
    zB.rU = function() {
        var nQ = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
        return function(dJ) {
            dJ = dJ || 10;
            var dp = [];
            for (var i = 0,
            nW; i < dJ; ++i) {
                nW = Math.floor(Math.random() * nQ.length);
                dp.push(nQ.charAt(nW))
            }
            return dp.join("")
        }
    } ();
    zB.rh = function(ik, gP) {
        return Math.floor(Math.random() * (gP - ik) + ik)
    };
    zB.eM = function(dJ) {
        dJ = Math.max(0, Math.min(dJ || 8, 30));
        var ik = Math.pow(10, dJ - 1),
        gP = ik * 10;
        return zB.rh(ik, gP).toString()
    }
})(); (function() {
    var o = NEJ.O,
    u = NEJ.P("nej.u"),
    j = NEJ.P("nej.j");
    j.hw = function() {
        var kv = new Date,
        qp = +kv,
        qn = 864e5;
        var qm = function(cV) {
            var dh = document.cookie,
            gW = "\\b" + cV + "=",
            iW = dh.search(gW);
            if (iW < 0) return "";
            iW += gW.length - 2;
            var kJ = dh.indexOf(";", iW);
            if (kJ < 0) kJ = dh.length;
            return dh.substring(iW, kJ) || ""
        };
        return function(cV, cA) {
            if (cA === undefined) return qm(cV);
            if (u.hz(cA)) {
                if ( !! cA) {
                    document.cookie = cV + "=" + cA + ";";
                    return cA
                }
                cA = {
                    expires: -100
                }
            }
            cA = cA || o;
            var dh = cV + "=" + (cA.value || "") + ";";
            delete cA.value;
            if (cA.expires !== undefined) {
                kv.setTime(qp + cA.expires * qn);
                cA.expires = kv.toGMTString()
            }
            dh += u.nH(cA, ";");
            document.cookie = dh
        }
    } ()
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    vL = NEJ.R,
    vy = NEJ.F,
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    il = pW("nej.ut"),
    vu;
    il.et = NEJ.C();
    vu = il.et.prototype;
    il.et.dz = function(cz) {
        cz = cz || {};
        var dv = !!this.jq && this.jq.shift() || new this(cz);
        dv.m$ = !0;
        dv.dD(cz);
        return dv
    };
    il.et.hp = function() {
        var wX = function(ek, cX, cB) {
            this.hp(ek);
            cB.splice(cX, 1)
        };
        return function(dv) {
            if (!dv) return null;
            if (!zB.kl(dv)) {
                if (!dv.m$) return null;
                if (! (dv instanceof this)) {
                    var cR = dv.constructor;
                    if ( !! cR.hp) cR.hp(dv);
                    return null
                }
                if (dv == this.gm) delete this.gm;
                if (!this.jq) this.jq = [];
                dv.m$ = !1;
                dv.eF();
                this.jq.push(dv);
                return null
            }
            zB.wV(dv, wX, this)
        }
    } ();
    il.et.ep = function(cz) {
        cz = cz || {};
        if (!this.gm) {
            this.gm = new this(cz);
            this.gm.dD(cz)
        }
        return this.gm
    };
    vu.zW = function() {
        this.fI = {};
        this.vI = {}
    };
    vu.dD = function(cz) {
        this.xc(cz)
    };
    vu.eF = function() {
        this.fJ();
        this.wH()
    };
    vu.wl = function() {
        var eg = +(new Date);
        var wI = function(c$) {
            if (!c$ || c$.length < 3) return;
            this.vI["de-" + eg++] = c$;
            jn.cM.apply(jn, c$)
        };
        return function(cB) {
            zB.rv(cB, wI, this)
        }
    } ();
    vu.wH = function() {
        var Fp = function(c$, cD, cS) {
            delete cS[cD];
            jn.hi.apply(jn, c$)
        };
        return function() {
            zB.wN(this.vI, Fp)
        }
    } ();
    vu.hp = function() {
        this.constructor.hp(this)
    };
    vu.sS = function(cF) {
        var bX = this.fI[cF.toLowerCase()];
        return !! bX && bX !== vy
    };
    vu.cM = function(cF, bX) {
        this.dI.apply(this, arguments)
    };
    vu.dI = function(cF, bX) {
        if ( !! cF && zB.fY(bX)) this.fI[cF.toLowerCase()] = bX;
        return this
    };
    vu.xc = function() {
        var Fo = function(bX, cF) {
            this.dI(cF, bX)
        };
        return function(dN) {
            zB.wN(dN, Fo, this);
            return this
        }
    } ();
    vu.fJ = function() {
        var Fn = function(bX, cF) {
            this.fJ(cF)
        };
        return function(cF) {
            var cF = (cF || "").toLowerCase();
            if ( !! cF) {
                delete this.fI[cF]
            } else {
                zB.wN(this.fI, Fn, this)
            }
            return this
        }
    } ();
    vu.FP = function(cF, bX) {
        if (!cF || !zB.fY(bX)) return this;
        cF = cF.toLowerCase();
        var dN = this.fI[cF];
        if (!dN) {
            this.fI[cF] = bX;
            return this
        }
        if (!zB.kl(dN)) {
            this.fI[cF] = [dN]
        }
        this.fI[cF].push(bX);
        return this
    };
    vu.dR = function(cF) {
        var bX = this.fI[(cF || "").toLowerCase()];
        if (!bX) return this;
        var c$ = vL.slice.call(arguments, 1);
        if (!zB.kl(bX)) return bX.apply(this, c$);
        zB.rv(bX,
        function(zX) {
            try {
                zX.apply(this, c$)
            } catch(e) {}
        },
        this);
        return this
    };
    il.wE = function() {
        var cE = {};
        return function(dU, cR, cz) {
            var dm = cR.AI;
            if (!dm) {
                dm = zB.rU(10);
                cR.AI = dm
            }
            var cD = dU + "-" + dm,
            dv = cE[cD];
            if ( !! cz && !dv) {
                dv = cR.dz(cz);
                dv.hp = dv.hp.ed(function(bX) {
                    delete cE[cD];
                    delete dv.hp
                });
                cE[cD] = dv
            }
            return dv
        }
    } ()
})(); (function() {
    var pW = NEJ.P,
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    vT = {},
    vS = [],
    wu = /\s+/g,
    eg = +(new Date),
    vR,
    eX;
    var wG = function(cL) {
        if (cL[2] != "in") throw "bad for loop statement: " + cL.join(" ");
        vS.push(cL[1]);
        return "var __HASH__" + cL[1] + " = " + cL[3] + "," + cL[1] + "," + cL[1] + "_count=0;" + "if (!!__HASH__" + cL[1] + ")" + "for(var " + cL[1] + "_key in __HASH__" + cL[1] + "){" + cL[1] + " = __HASH__" + cL[1] + "[" + cL[1] + "_key];" + "if (!" + cL[1] + "||typeof(" + cL[1] + ')=="function") continue;' + cL[1] + "_count++;"
    };
    var wF = function() {
        var cL = vS[vS.length - 1];
        return "}; if(!__HASH__" + cL + "||!" + cL + "_count){"
    };
    var xi = function() {
        vS.pop();
        return "};"
    };
    var xh = function(cL) {
        if (cL[2] != "as") throw "bad for list loop statement: " + cL.join(" ");
        var jU = cL[1].split("..");
        if (jU.length > 1) {
            return "for(var " + cL[3] + "," + cL[3] + "_index=0," + cL[3] + "_beg=" + jU[0] + "," + cL[3] + "_end=" + jU[1] + "," + cL[3] + "_length=parseInt(" + cL[3] + "_end-" + cL[3] + "_beg+1);" + cL[3] + "_index<" + cL[3] + "_length;" + cL[3] + "_index++){" + cL[3] + " = " + cL[3] + "_beg+" + cL[3] + "_index;"
        } else {
            return "for(var __LIST__" + cL[3] + " = " + cL[1] + "," + cL[3] + "," + cL[3] + "_index=0," + cL[3] + "_length=__LIST__" + cL[3] + ".length;" + cL[3] + "_index<" + cL[3] + "_length;" + cL[3] + "_index++){" + cL[3] + " = __LIST__" + cL[3] + "[" + cL[3] + "_index];"
        }
    };
    var xg = function(cL) {
        if (!cL || !cL.length) return;
        cL.shift();
        var cV = cL[0].split("(")[0];
        return "var " + cV + " = function" + cL.join("").replace(cV, "") + "{var __OUT=[];"
    };
    eX = {
        blk: /^\{(cdata|minify|eval)/i,
        tag: "forelse|for|list|if|elseif|else|var|macro|break|notrim|trim",
        def: {
            "if": {
                pfix: "if(",
                sfix: "){",
                pmin: 1
            },
            "else": {
                pfix: "}else{"
            },
            elseif: {
                pfix: "}else if(",
                sfix: "){",
                pdft: "true"
            },
            "/if": {
                pfix: "}"
            },
            "for": {
                pfix: wG,
                pmin: 3
            },
            forelse: {
                pfix: wF
            },
            "/for": {
                pfix: xi
            },
            list: {
                pfix: xh,
                pmin: 3
            },
            "/list": {
                pfix: "};"
            },
            "break": {
                pfix: "break;"
            },
            "var": {
                pfix: "var ",
                sfix: ";"
            },
            macro: {
                pfix: xg
            },
            "/macro": {
                pfix: "return __OUT.join(''); };"
            },
            trim: {
                pfix: function() {
                    vR = !0
                }
            },
            "/trim": {
                pfix: function() {
                    vR = null
                }
            }
        },
        ext: {
            rand: zB.eM,
            escape: zB.rx,
            format: zB.rs,
            seed: function(dx) {
                return (dx || "") + eg
            },
            "default": function(zV, fd) {
                return zV || fd
            }
        }
    };
    var xf = function(cP, dC) {
        var cL = cP.slice(1, -1).split(wu),
        eN = eX.def[cL[0]];
        if (!eN) {
            vQ(cP, dC);
            return
        }
        if ( !! eN.pmin && eN.pmin >= cL.length) throw "Statement needs more parameters:" + cP;
        dC.push( !! eN.pfix && typeof eN.pfix != "string" ? eN.pfix(cL) : eN.pfix || "");
        if ( !! eN.sfix) {
            if (cL.length <= 1) {
                if ( !! eN.pdft) dC.push(eN.pdft)
            } else {
                for (var i = 1,
                l = cL.length; i < l; i++) {
                    if (i > 1) dC.push(" ");
                    dC.push(cL[i])
                }
            }
            dC.push(eN.sfix)
        }
    };
    var vQ = function(cP, dC) {
        if (!cP) return;
        var jE = cP.split("\n");
        if (!jE || !jE.length) return;
        for (var i = 0,
        l = jE.length,
        vF; i < l; i++) {
            vF = jE[i];
            if ( !! vR) {
                vF = vF.trim();
                if (!vF) continue
            }
            wW(vF, dC);
            if ( !! vR && i < l - 1) dC.push("__OUT.push('\\n');")
        }
    };
    var wW = function() {
        var qS = /\|\|/g,
        qR = /#@@#/g;
        return function(cP, dC) {
            var hs = "}",
            hu = -1,
            dJ = cP.length,
            hv, fi, gR, jD, hI;
            while (hu + hs.length < dJ) {
                hv = "${";
                fi = "}";
                gR = cP.indexOf(hv, hu + hs.length);
                if (gR < 0) break;
                if (cP.charAt(gR + 2) == "%") {
                    hv = "${%";
                    fi = "%}"
                }
                jD = cP.indexOf(fi, gR + hv.length);
                if (jD < 0) break;
                vO(cP.substring(hu + hs.length, gR), dC);
                hI = cP.substring(gR + hv.length, jD).replace(qS, "#@@#").split("|");
                for (var i = 0,
                l = hI.length; i < l; hI[i] = hI[i].replace(qR, "||"), i++);
                dC.push("__OUT.push(");
                wo(hI, dC);
                dC.push(");");
                hs = fi;
                hu = jD
            }
            vO(cP.substring(hu + hs.length), dC)
        }
    } ();
    var vO = function() {
        var cS = {
            r: /\n|\\|\'/g,
            "\n": "\\n",
            "\\": "\\\\",
            "'": "\\'"
        };
        return function(cP, dC) {
            if (!cP) return;
            dC.push("__OUT.push('" + zB.jK(cS, cP) + "');")
        }
    } ();
    var wo = function(gT, dC) {
        if (!gT || !gT.length) return;
        if (gT.length == 1) {
            dC.push(gT.pop());
            return
        }
        var ke = gT.pop().split(":");
        dC.push("__MDF['" + ke.shift() + "'](");
        wo(gT, dC);
        if (ke.length > 0) dC.push("," + ke.join(":"));
        dC.push(")")
    };
    var wZ = function() {
        var qP = /\t/g,
        qN = /\n/g,
        qM = /\r\n?/g;
        return function(cP) {
            cP = cP.replace(qM, "\n").replace(qP, "    ");
            var fK = ["if(!__CTX) return '';var __OUT=[];with(__CTX){"];
            var gC = -1,
            dJ = cP.length;
            var dS, gZ, hZ, ij, fW, iq, jV, iu;
            while (gC + 1 < dJ) {
                dS = gC;
                dS = cP.indexOf("{", dS + 1);
                while (dS >= 0) {
                    gZ = cP.indexOf("}", dS + 1);
                    hZ = cP.substring(dS, gZ);
                    ij = hZ.match(eX.blk);
                    if ( !! ij) {
                        fW = ij[1].length + 1;
                        iq = cP.indexOf("}", dS + fW);
                        if (iq >= 0) {
                            jV = iq - dS - fW <= 0 ? "{/" + ij[1] + "}": hZ.substr(fW + 1);
                            fW = cP.indexOf(jV, iq + 1);
                            if (fW >= 0) {
                                vQ(cP.substring(gC + 1, dS), fK);
                                iu = cP.substring(iq + 1, fW);
                                switch (ij[1]) {
                                case "cdata":
                                    vO(iu, fK);
                                    break;
                                case "minify":
                                    vO(iu.replace(qN, " ").replace(wu, " "), fK);
                                    break;
                                case "eval":
                                    if ( !! iu) fK.push("__OUT.push((function(){" + iu + "})());");
                                    break
                                }
                                dS = gC = fW + jV.length - 1
                            }
                        }
                    } else if (cP.charAt(dS - 1) != "$" && cP.charAt(dS - 1) != "\\" && hZ.substr(hZ.charAt(1) == "/" ? 2 : 1).search(eX.tag) == 0) {
                        break
                    }
                    dS = cP.indexOf("{", dS + 1)
                }
                if (dS < 0) break;
                gZ = cP.indexOf("}", dS + 1);
                if (gZ < 0) break;
                vQ(cP.substring(gC + 1, dS), fK);
                xf(cP.substring(dS, gZ + 1), fK);
                gC = gZ
            }
            vQ(cP.substring(gC + 1), fK);
            fK.push("};return __OUT.join('');");
            return new Function("__CTX", "__MDF", fK.join(""))
        }
    } ();
    dl.sR = function() {
        return eg
    };
    dl.gc = function() {
        var vK = {};
        return function(dm, cA, kk) {
            try {
                cA = cA || {};
                if (!vK[dm] && !vT[dm]) return "";
                if (!vK[dm]) {
                    vK[dm] = wZ(vT[dm]);
                    delete vT[dm]
                }
                cA.defined = function(cD) {
                    return cA[cD] != null
                };
                if ( !! kk) for (var p in eX.ext) kk[p] = eX.ext[p];
                return vK[dm](cA, kk || eX.ext)
            } catch(ex) {
                return ex.message || ""
            }
        }
    } ();
    dl.ju = function(cP, wM) {
        if (!cP) return "";
        var dm, _ = dl.cK(cP);
        if ( !! _) {
            dm = _.id;
            cP = _.value || _.innerText;
            if (!wM) dl.fk(_)
        }
        dm = dm || "ck_" + zB.eM();
        vT[dm] = cP;
        return dm
    };
    dl.xm = function(ey, dm, cA, kk) {
        ey = dl.cK(ey);
        if (!ey) return;
        ey.innerHTML = dl.gc(dm, cA, kk)
    }
})(); (function() {
    var vy = NEJ.F,
    dl = NEJ.P("nej.e"),
    jn = NEJ.P("nej.v"),
    zB = NEJ.P("nej.u"),
    il = NEJ.P("nej.ut"),
    CL;
    il.vY = NEJ.C();
    CL = il.vY.dy(il.et);
    CL.zW = function() {
        this.dj = {};
        this.CU()
    };
    CL.dD = function(cz) {
        this.CH(cz);
        this.vH = dl.cK(cz.element) || window;
        this.wB(cz.event);
        this.wJ();
        this.dR("oninit")
    };
    CL.eF = function() {
        this.CI();
        for (var x in this.dj) {
            if (!zB.kl(this.dj[x])) delete this.vH[x];
            delete this.dj[x]
        }
        delete this.vH
    };
    CL.vZ = function(_, cF) {
        _ = dl.cK(_);
        return _ === this.vH && (!cF || !!this.dj["on" + cF])
    };
    CL.wB = function(bX) {
        if (zB.hz(bX)) {
            var cV = "on" + bX;
            if (!this.dj[cV]) {
                this.dj[cV] = this.wY.cC(this, bX)
            }
            this.wA(bX);
            return
        }
        if (zB.kl(bX)) for (var i = 0,
        l = bX.length; i < l; i++) this.wB(bX[i])
    };
    CL.wA = function(cF) {
        var bX = "on" + cF,
        zX = this.vH[bX],
        wz = this.dj[bX];
        if (zX != wz) {
            this.vJ(cF);
            if ( !! zX && zX != vy) this.wy(cF, zX);
            this.vH[bX] = wz
        }
    };
    CL.wy = function(cF, zX) {
        var cB = this.dj[cF];
        if (!cB) {
            cB = [];
            this.dj[cF] = cB
        }
        if (zB.fY(zX)) cB.push(zX)
    };
    CL.vJ = function(cF, zX) {
        var cB = this.dj[cF];
        if (!cB || !cB.length) return;
        if (!zX) {
            delete this.dj[cF];
            return
        }
        for (var i = cB.length - 1; i >= 0; i--) if (zX === cB[i]) {
            cB.splice(i, 1);
            break
        }
    };
    CL.wY = function(cF, bX) {
        bX = bX || {
            noargs: !0
        };
        bX.type = cF;
        this.dR("ondispatch", bX);
        if ( !! bX.stopped) return;
        var cB = this.dj[cF];
        if (!cB || !cB.length) return;
        for (var i = 0,
        l = cB.length; i < l; i++) try {
            cB[i](bX)
        } catch(ex) {}
    };
    CL.wJ = function() {
        if ( !! this.xe) return;
        this.xe = true;
        jn.cM = jn.cM.ed(function(bX) {
            var c$ = bX.args,
            cF = c$[1].toLowerCase();
            if (this.vZ(c$[0], cF)) {
                bX.stopped = !0;
                this.wA(cF);
                this.wy(cF, c$[2]);
                this.dR("oneventadd")
            }
        }.cC(this));
        jn.hi = jn.hi.ed(function(bX) {
            var c$ = bX.args,
            cF = c$[1].toLowerCase();
            if (this.vZ(c$[0], cF)) {
                bX.stopped = !0;
                this.vJ(cF, c$[2])
            }
        }.cC(this));
        jn.fJ = jn.fJ.ed(function(bX) {
            var c$ = bX.args,
            cF = (c$[1] || "").toLowerCase();
            if (this.vZ(c$[0])) {
                if ( !! cF) {
                    this.vJ(cF);
                    return
                }
                for (var x in this.dj) {
                    if (zB.kl(this.dj[x])) this.vJ(x)
                }
            }
        }.cC(this));
        jn.dR = jn.dR.ed(function(bX) {
            var c$ = bX.args,
            cF = c$[1].toLowerCase();
            if (this.vZ(c$[0], cF)) {
                bX.stopped = !0;
                c$[0]["on" + cF].apply(c$[0], c$.slice(2))
            }
        }.cC(this))
    }
})(); (function() {
    var pW = NEJ.P,
    vy = NEJ.F,
    rl = pW("nej.g"),
    dl = pW("nej.e"),
    mo = pW("nej.ut"),
    il = pW("nej.ut.j"),
    CT;
    il.Da = NEJ.C();
    CT = il.Da.dy(mo.et);
    CT.dD = function(cz) {
        this.CH(cz);
        this.iz = {
            url: "",
            sync: !1,
            type: "text",
            method: "GET",
            timeout: 6e4
        };
        NEJ.EX(this.iz, cz);
        this.ji = cz.headers || {};
        var cP = this.ji[rl.gJ];
        if (cP == null) this.ji[rl.gJ] = rl.qK
    };
    CT.eF = function() {
        this.CI();
        delete this.wv;
        delete this.iz;
        delete this.ji
    };
    CT.CK = function(bX) {
        var gF = bX.status;
        if (gF == -1) {
            this.dR("onerror", {
                code: rl.jW,
                message: "请求[" + this.iz.url + "]超时！"
            });
            return
        }
        if (("" + gF).indexOf("2") != 0) {
            this.dR("onerror", {
                data: gF,
                code: rl.fO,
                message: "服务器返回异常状态[" + gF + "]!"
            });
            return
        }
        this.dR("onload", dl.Fy(bX.result, this.iz.type))
    };
    CT.CP = vy;
    CT.pE = function(cA) {
        var cU = this.iz.url;
        if (!cU) {
            this.dR("onerror", {
                code: rl.jX,
                message: "没有输入请求地址！"
            });
            return
        }
        try {
            this.iz.data = cA == null ? null: cA;
            var bX = {
                request: this.iz,
                headers: this.ji
            };
            try {
                this.dR("onbeforerequest", bX)
            } catch(ex) {}
            this.CP(bX)
        } catch(e) {
            this.dR("onerror", {
                code: rl.fO,
                message: "请求[" + cU + "]失败:" + e.message + "！"
            })
        }
    };
    CT.ww = vy
})(); (function() {
    var pW = NEJ.P,
    vy = NEJ.F,
    eE = pW("nej.h"),
    rl = pW("nej.g"),
    zB = pW("nej.u"),
    il = pW("nej.ut.j"),
    cE = {},
    Db;
    il.DA = NEJ.C();
    Db = il.DA.dy(il.Da);
    Db.eF = function() {
        this.CI();
        window.clearTimeout(this.ho);
        delete this.ho;
        try {
            this.CJ.onreadystatechange = vy;
            this.CJ.abort()
        } catch(e) {}
        delete this.CJ
    };
    Db.CP = function() {
        var Fl = function(zV, cD) {
            this.CJ.setRequestHeader(cD, zV)
        };
        return function(cz) {
            var cY = cz.request,
            eo = cz.headers;
            this.CJ = eE.kF();
            if (eo[rl.gJ] === rl.iH) {
                delete eo[rl.gJ];
                this.CJ.upload.onprogress = this.iN.cC(this, 1);
                if (cY.data.tagName === "FORM") cY.data = new FormData(cY.data)
            }
            this.CJ.onreadystatechange = this.iN.cC(this, 2);
            if (cY.timeout != 0) {
                this.ho = window.setTimeout(this.iN.cC(this, 3), cY.timeout)
            }
            this.CJ.open(cY.method, cY.url, !cY.sync);
            zB.wN(eo, Fl, this);
            this.CJ.send(cY.data)
        }
    } ();
    Db.iN = function(cF) {
        switch (cF) {
        case 1:
            this.dR("onuploading", arguments[1]);
            break;
        case 2:
            if (this.CJ.readyState == 4) this.CK({
                status: this.CJ.status,
                result: this.CJ.responseText || ""
            });
            break;
        case 3:
            this.CK({
                status:
                -1
            });
            break
        }
    };
    Db.ww = function() {
        this.CK({
            status: 0
        })
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    zB = pW("nej.u"),
    dl = pW("nej.e");
    var zZ = dl.ju('{var hide  = defined("hidden")&&!!hidden}{var param = defined("params")&&params||NEJ.O}{var width = !hide?width:"1px",height = !hide?height:"1px"}{if hide}<div style="position:absolute;top:0;left:0;width:1px;height:1px;z-index:10000;overflow:hidden;">{/if}<object classid = "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"codebase = "http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab"width = "${width|default:"100px"}"height = "${height|default:"100px"}" id="${id}"><param value="${src}" name="movie">{for x in param}<param value="${x}" name="${x_key}"/>{/for}<embed src="${src}" name="${id}"width="${width|default:"100px"}"height="${height|default:"100px"}"pluginspage="http://www.adobe.com/go/getflashplayer"type="application/x-shockwave-flash"{for x in param}${x_key}="${x}" {/for}></embed></object>{if hide}</div>{/if}');
    dl.Fk = function() {
        var cE = {},
        eg = +(new Date);
        var Fj = function(cz) {
            var ey = dl.cK(cz.parent) || document.body,
            dV = dl.gc(zZ, cz);
            ey.insertAdjacentHTML(!cz.hidden ? "beforeEnd": "afterBegin", dV)
        };
        var Fi = function(lK) {
            return !! lK && !!lK.inited && !!lK.inited()
        };
        var DS = function(dU) {
            var df = [document.embeds[dU], dl.cK(dU), document[dU], window[dU]],
            cX = zB.wN(df, Fi),
            lK = df[cX],
            Dy = dU + "-count";
            cE[Dy]++;
            if ( !! lK || cE[Dy] > 100) {
                cE[dU](lK);
                delete cE[dU];
                delete cE[Dy];
                return
            }
            window.setTimeout(DS.cC(null, dU), 300)
        };
        return function(cz) {
            cz = cz || {};
            if (!cz.src) return;
            cz.id = cz.id || "flash-" + eg++;
            Fj(cz);
            if (!cz.onready) return;
            cE[cz.id] = cz.onready;
            cE[cz.id + "-count"] = 0;
            DS(cz.id)
        }
    } ()
})(); (function() {
    var pW = NEJ.P,
    vv = pW("nej.c"),
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    il = pW("nej.ut.j"),
    DU = pW("nej.ut.j.cb"),
    cE = {},
    eg = +(new Date),
    Dx;
    DU["ld" + eg] = function(cD, fu) {
        var iP = cE[cD];
        if (!iP) return;
        delete cE[cD];
        iP.CK({
            status: 200,
            result: fu
        })
    };
    DU["er" + eg] = function(cD, gF) {
        var iP = cE[cD];
        if (!iP) return;
        delete cE[cD];
        iP.CK({
            status: gF || 0
        })
    };
    il.DV = NEJ.C();
    Dx = il.DV.dy(il.Da);
    Dx.CP = function(cz) {
        var lK = cE.flash;
        if (zB.kl(lK)) {
            lK.push(this.CP.cC(this, cz));
            return
        }
        if (!lK) {
            cE.flash = [this.CP.cC(this, cz)];
            dl.Fk({
                hidden: !0,
                src: vv.cK("ajax.swf"),
                onready: function(lK) {
                    if (!lK) return;
                    var cB = cE.flash;
                    cE.flash = lK;
                    zB.wV(cB,
                    function(zX) {
                        try {
                            zX()
                        } catch(e) {}
                    })
                }
            });
            return
        }
        this.wv = "swf-" + zB.eM();
        cE[this.wv] = this;
        var cA = NEJ.EX({
            url: "",
            data: null,
            method: "GET"
        },
        cz.request);
        cA.key = this.wv;
        cA.headers = cz.headers;
        cA.onerror = "nej.ut.j.cb.er" + eg;
        cA.onloaded = "nej.ut.j.cb.ld" + eg;
        var DW = vv.EP(cA.url);
        if ( !! DW) cA.policyURL = DW;
        lK.request(cA)
    };
    Dx.ww = function() {
        delete cE[this.wv];
        this.CK({
            status: 0
        })
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    eE = pW("nej.h");
    eE.DX = function() {
        var dt = /^([\w]+?:\/\/.*?(?=\/|$))/i;
        return function(CM) {
            CM = CM || "";
            if (dt.test(CM)) return RegExp.$1;
            return "*"
        }
    } ();
    eE.Dw = function(cA) {
        return cA
    };
    eE.Dv = function(DZ, cz) {
        if (!DZ.postMessage) return;
        cz = cz || ll;
        DZ.postMessage(eE.Dw(cz.data), eE.DX(cz.origin))
    }
})(); (function() {
    var p = NEJ.P("window.JSON");
    if ( !! p.parse || !!p.stringify) return;
    p.stringify = function() {
        "use strict";
        function f(n) {
            return n < 10 ? "0" + n: n
        }
        if (typeof Date.prototype.toJSON !== "function") {
            Date.prototype.toJSON = function(key) {
                return isFinite(this.valueOf()) ? this.getUTCFullYear() + "-" + f(this.getUTCMonth() + 1) + "-" + f(this.getUTCDate()) + "T" + f(this.getUTCHours()) + ":" + f(this.getUTCMinutes()) + ":" + f(this.getUTCSeconds()) + "Z": null
            };
            String.prototype.toJSON = Number.prototype.toJSON = Boolean.prototype.toJSON = function(key) {
                return this.valueOf()
            }
        }
        var C = /[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
        t, indent, meta = {
            "\b": "\\b",
            "\t": "\\t",
            "\n": "\\n",
            "\f": "\\f",
            "\r": "\\r",
            '"': '\\"',
            "\\": "\\\\"
        },
        H;
        function quote(string) {
            C.lastIndex = 0;
            return C.test(string) ? '"' + string.replace(C,
            function(a) {
                var c = meta[a];
                return typeof c === "string" ? c: "\\u" + ("0000" + a.charCodeAt(0).toString(16)).slice( - 4)
            }) + '"': '"' + string + '"'
        }
        function V(key, h) {
            var i, O, l, length, R = t,
            L, value = h[key];
            if (value && typeof value === "object" && typeof value.toJSON === "function") {
                value = value.toJSON(key)
            }
            if (typeof H === "function") {
                value = H.call(h, key, value)
            }
            switch (typeof value) {
            case "string":
                return quote(value);
            case "number":
                return isFinite(value) ? String(value) : "null";
            case "boolean":
            case "null":
                return String(value);
            case "object":
                if (!value) {
                    return "null"
                }
                t += indent;
                L = [];
                if (Object.prototype.toString.apply(value) === "[object Array]") {
                    length = value.length;
                    for (i = 0; i < length; i += 1) {
                        L[i] = V(i, value) || "null"
                    }
                    l = L.length === 0 ? "[]": t ? "[\n" + t + L.join(",\n" + t) + "\n" + R + "]": "[" + L.join(",") + "]";
                    t = R;
                    return l
                }
                if (H && typeof H === "object") {
                    length = H.length;
                    for (i = 0; i < length; i += 1) {
                        if (typeof H[i] === "string") {
                            O = H[i];
                            l = V(O, value);
                            if (l) {
                                L.push(quote(O) + (t ? ": ": ":") + l)
                            }
                        }
                    }
                } else {
                    for (O in value) {
                        if (Object.prototype.hasOwnProperty.call(value, O)) {
                            l = V(O, value);
                            if (l) {
                                L.push(quote(O) + (t ? ": ": ":") + l)
                            }
                        }
                    }
                }
                l = L.length === 0 ? "{}": t ? "{\n" + t + L.join(",\n" + t) + "\n" + R + "}": "{" + L.join(",") + "}";
                t = R;
                return l
            }
        }
        return function(value, J, space) {
            var i;
            t = "";
            indent = "";
            if (typeof space === "number") {
                for (i = 0; i < space; i += 1) {
                    indent += " "
                }
            } else if (typeof space === "string") {
                indent = space
            }
            H = J;
            if (J && typeof J !== "function" && (typeof J !== "object" || typeof J.length !== "number")) {
                throw new Error("JSON.stringify")
            }
            return V("", {
                "": value
            })
        }
    } ();
    p.parse = function() {
        "use strict";
        var at, ch, escapee = {
            '"': '"',
            "\\": "\\",
            "/": "/",
            b: "\b",
            f: "\f",
            n: "\n",
            r: "\r",
            t: "\t"
        },
        text,
        error = function(m) {
            throw {
                name: "SyntaxError",
                message: m,
                at: at,
                text: text
            }
        },
        next = function(c) {
            if (c && c !== ch) {
                error("Expected '" + c + "' instead of '" + ch + "'")
            }
            ch = text.charAt(at);
            at += 1;
            return ch
        },
        number = function() {
            var number, string = "";
            if (ch === "-") {
                string = "-";
                next("-")
            }
            while (ch >= "0" && ch <= "9") {
                string += ch;
                next()
            }
            if (ch === ".") {
                string += ".";
                while (next() && ch >= "0" && ch <= "9") {
                    string += ch
                }
            }
            if (ch === "e" || ch === "E") {
                string += ch;
                next();
                if (ch === "-" || ch === "+") {
                    string += ch;
                    next()
                }
                while (ch >= "0" && ch <= "9") {
                    string += ch;
                    next()
                }
            }
            number = +string;
            if (!isFinite(number)) {
                error("Bad number")
            } else {
                return number
            }
        },
        string = function() {
            var hex, i, string = "",
            uffff;
            if (ch === '"') {
                while (next()) {
                    if (ch === '"') {
                        next();
                        return string
                    }
                    if (ch === "\\") {
                        next();
                        if (ch === "u") {
                            uffff = 0;
                            for (i = 0; i < 4; i += 1) {
                                hex = parseInt(next(), 16);
                                if (!isFinite(hex)) {
                                    break
                                }
                                uffff = uffff * 16 + hex
                            }
                            string += String.fromCharCode(uffff)
                        } else if (typeof escapee[ch] === "string") {
                            string += escapee[ch]
                        } else {
                            break
                        }
                    } else {
                        string += ch
                    }
                }
            }
            error("Bad string")
        },
        white = function() {
            while (ch && ch <= " ") {
                next()
            }
        },
        word = function() {
            switch (ch) {
            case "t":
                next("t");
                next("r");
                next("u");
                next("e");
                return true;
            case "f":
                next("f");
                next("a");
                next("l");
                next("s");
                next("e");
                return false;
            case "n":
                next("n");
                next("u");
                next("l");
                next("l");
                return null
            }
            error("Unexpected '" + ch + "'")
        },
        value,
        array = function() {
            var array = [];
            if (ch === "[") {
                next("[");
                white();
                if (ch === "]") {
                    next("]");
                    return array
                }
                while (ch) {
                    array.push(value());
                    white();
                    if (ch === "]") {
                        next("]");
                        return array
                    }
                    next(",");
                    white()
                }
            }
            error("Bad array")
        },
        object = function() {
            var key, object = {};
            if (ch === "{") {
                next("{");
                white();
                if (ch === "}") {
                    next("}");
                    return object
                }
                while (ch) {
                    key = string();
                    white();
                    next(":");
                    if (Object.hasOwnProperty.call(object, key)) {
                        error('Duplicate key "' + key + '"')
                    }
                    object[key] = value();
                    white();
                    if (ch === "}") {
                        next("}");
                        return object
                    }
                    next(",");
                    white()
                }
            }
            error("Bad object")
        };
        value = function() {
            white();
            switch (ch) {
            case "{":
                return object();
            case "[":
                return array();
            case '"':
                return string();
            case "-":
                return number();
            default:
                return ch >= "0" && ch <= "9" ? number() : word()
            }
        };
        return function(source, reviver) {
            var result;
            text = source;
            at = 0;
            ch = " ";
            result = value();
            white();
            if (ch) {
                error("Syntax error")
            }
            return typeof reviver === "function" ?
            function walk(holder, key) {
                var k, v, value = holder[key];
                if (value && typeof value === "object") {
                    for (k in value) {
                        if (Object.prototype.hasOwnProperty.call(value, k)) {
                            v = walk(value, k);
                            if (v !== undefined) {
                                value[k] = v
                            } else {
                                delete value[k]
                            }
                        }
                    }
                }
                return reviver.call(holder, key, value)
            } ({
                "": result
            },
            "") : result
        }
    } ()
})(); (function() {
    var pW = NEJ.P,
    il = pW("nej.p"),
    eE = pW("nej.h"),
    zB = pW("nej.u"),
    jn = pW("nej.v"),
    mo = pW("nej.ut");
    if (il.ig.trident) return;
    if ( !! window.postMessage) {
        eE.Dw = eE.Dw.ed(function(bX) {
            bX.stopped = !0;
            bX.value = JSON.stringify(bX.args[0])
        });
        return
    }
    var cD = "MSG|",
    vM = [];
    var Fh = function() {
        var cV = unescape(window.name || "").trim();
        if (!cV || cV.indexOf(cD) != 0) return;
        window.name = "";
        var dp = zB.hP(cV.replace(cD, ""), "|"),
        CM = (dp.origin || "").toLowerCase();
        if ( !! CM && CM != "*" && location.href.toLowerCase().indexOf(CM) != 0) return;
        jn.dR(window, "message", {
            data: JSON.parse(dp.data || "null"),
            source: window.frames[dp.self] || dp.self,
            origin: eE.DX(dp.ref || document.referrer)
        })
    };
    var Fg = function() {
        var Dh;
        var Ff = function(cS, cX, cB) {
            if (zB.sI(Dh, cS.w) < 0) {
                Dh.push(cS.w);
                cB.splice(cX, 1);
                cS.w.name = cS.d
            }
        };
        return function() {
            Dh = [];
            zB.wV(vM, Ff);
            Dh = null
        }
    } ();
    eE.Dv = function() {
        var Fe = function(cA) {
            var dp = {};
            cA = cA || ll;
            dp.origin = cA.origin || "";
            dp.ref = location.href;
            dp.self = cA.source;
            dp.data = JSON.stringify(cA.data);
            return cD + zB.nH(dp, "|", !0)
        };
        return eE.Dv.ed(function(bX) {
            bX.stopped = !0;
            var c$ = bX.args;
            vM.unshift({
                w: c$[0],
                d: escape(Fe(c$[1]))
            })
        })
    } ();
    mo.vY.dz({
        element: window,
        event: "message"
    });
    window.setInterval(Fg, 100);
    window.setInterval(Fh, 20)
})(); (function() {
    var pW = NEJ.P,
    eE = pW("nej.h"),
    dl = pW("nej.e"),
    vC = pW("nej.j");
    vC.Fd = function() {
        var Ea = window.name || "_parent",
        Fc = {
            CB: window.top,
            Ea: window,
            ey: window.parent
        };
        return function(gd, cz) {
            if (typeof gd == "string") {
                gd = Fc[gd] || window.frames[gd];
                if (!gd) return
            }
            var cA = NEJ.X({
                origin: "*",
                source: Ea
            },
            cz);
            eE.Dv(gd, cA)
        }
    } ()
})(); (function() {
    var pW = NEJ.P,
    vv = pW("nej.c"),
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    vC = pW("nej.j"),
    il = pW("nej.ut.j"),
    cE = {},
    Du;
    var Dt = function() {
        var dq = "NEJ-AJAX-DATA:";
        return function(bX) {
            var cA = bX.data;
            if (cA.indexOf(dq) != 0) return;
            cA = JSON.parse(cA.replace(dq, ""));
            var iP = cE[cA.key];
            if (!iP) return;
            delete cE[cA.key];
            cA.result = decodeURIComponent(cA.result || "");
            iP.CK(cA)
        }
    } ();
    jn.cM(window, "message", Dt);
    il.Eb = NEJ.C();
    Du = il.Eb.dy(il.Da);
    Du.CP = function(cz) {
        var cY = cz.request,
        iP = vv.EL(cY.url),
        fo = cE[iP];
        if (zB.kl(fo)) {
            fo.push(this.CP.cC(this, cz));
            return
        }
        if (!fo) {
            cE[iP] = [this.CP.cC(this, cz)];
            dl.wj({
                src: iP,
                visible: !1,
                onload: function(bX) {
                    var cB = cE[iP];
                    cE[iP] = jn.dE(bX).contentWindow;
                    zB.wV(cB,
                    function(zX) {
                        try {
                            zX()
                        } catch(e) {}
                    })
                }
            });
            return
        }
        this.wv = "frm-" + zB.eM();
        cE[this.wv] = this;
        var cA = NEJ.EX({
            url: "",
            data: null,
            timeout: 0,
            method: "GET"
        },
        cY);
        cA.key = this.wv;
        cA.headers = cz.headers;
        vC.Fd(cE[iP], {
            data: cA
        })
    };
    Du.ww = function() {
        delete cE[this.wv];
        this.CK({
            status: 0
        })
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    rl = pW("nej.g"),
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    vC = pW("nej.j"),
    il = pW("nej.ut.j"),
    cE = {},
    Dg;
    var Dt = function() {
        var dq = "NEJ-UPLOAD-RESULT:";
        return function(bX) {
            var cA = bX.data;
            if (cA.indexOf(dq) != 0) return;
            cA = JSON.parse(cA.replace(dq, ""));
            var iP = cE[cA.key];
            if (!iP) return;
            delete cE[cA.key];
            iP.CK(decodeURIComponent(cA.result))
        }
    } ();
    jn.cM(window, "message", Dt);
    il.Ec = NEJ.C();
    Dg = il.Ec.dy(il.Da);
    Dg.eF = function() {
        this.CI();
        dl.fk(this.Dq);
        delete this.Dq;
        window.clearTimeout(this.ho);
        delete this.ho
    };
    Dg.CK = function(fu) {
        try {
            fu = JSON.parse(fu)
        } catch(e) {}
        this.dR("onload", fu)
    };
    Dg.CP = function() {
        var Fb = function() {
            try {
                var eL = this.Dq.contentWindow.document.body;
                this.CK(eL.innerText || eL.textContent)
            } catch(e) {}
        };
        var Aq = function(cU, CE) {
            vC.hk(cU, {
                type: "json",
                method: "POST",
                mode: parseInt(CE) || 0,
                onload: function(cA) {
                    this.dR("onuploading", cA);
                    this.ho = window.setTimeout(Aq.cC(this, cU, CE))
                }.cC(this),
                onerror: function(d$) {
                    this.ho = window.setTimeout(Aq.cC(this, cU, CE))
                }.cC(this)
            })
        };
        return function(cz) {
            var cY = cz.request,
            eo = cz.headers,
            ff = cY.data,
            cV = "fom-" + zB.eM();
            cE[cV] = this;
            ff.target = cV;
            ff.method = "POST";
            ff.enctype = rl.iH;
            ff.encoding = rl.iH;
            this.Dq = dl.wj({
                name: cV,
                onload: function(bX) {
                    var fo = jn.dE(bX);
                    jn.cM(fo, "load", Fb.cC(this));
                    ff.submit();
                    var Fa = (ff.nej_query || ll).value;
                    if (!Fa) return;
                    Aq.call(this, cU, (ff.nej_mode || ll).value)
                }.cC(this)
            })
        }
    } ()
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    eE = pW("nej.h"),
    il = pW("nej.ut.j");
    eE.kF = function() {
        return new XMLHttpRequest
    };
    eE.DL = function(CE, Dd, cz) {
        var cS = !!Dd ? {
            2 : il.Ec
        }: {
            2 : il.Eb,
            3 : il.DV
        };
        return (cS[CE] || il.DA).dz(cz)
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    il = pW("nej.p"),
    eE = pW("nej.h"),
    mo = pW("nej.ut.j");
    if (il.ig.trident) return;
    eE.kF = function() {
        var hG = ["Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.3.0", "Msxml2.XMLHTTP.4.0", "Msxml2.XMLHTTP.5.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP"];
        var pP = function() {
            for (var i = 0,
            l = hG.length; i < l; i++) {
                try {
                    return new ActiveXObject(hG[i])
                } catch(e) {}
            }
            return null
        };
        return eE.kF.ed(function(bX) {
            if ( !! window.XMLHttpRequest) return;
            bX.stopped = !0;
            bX.value = pP()
        })
    } ();
    eE.DL = function() {
        var CW = {
            0 : 2,
            1 : 3
        };
        return eE.DL.ed(function(bX) {
            var c$ = bX.args,
            CE = c$[0];
            c$[0] = !!c$[1] ? 2 : CW[CE] || CE
        })
    } ()
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    vy = NEJ.F,
    eE = pW("nej.h"),
    rl = pW("nej.g"),
    zB = pW("nej.u"),
    vC = pW("nej.j"),
    il = pW("nej.ut.j"),
    CZ = {},
    jG = vy;
    vC.ww = function(dm) {
        var cE = CZ[dm];
        if (!cE) return;
        cE.req.ww()
    };
    vC.FL = function(gV) {
        jG = gV || vy;
        return this
    };
    vC.hk = function() {
        var EZ = (location.protocol + "//" + location.host).toLowerCase();
        var EY = function(cU) {
            var CM = zB.Fq(cU);
            return !! CM && CM != EZ
        };
        var EW = function(eo) {
            return (eo || ll)[rl.gJ] == rl.iH
        };
        var EV = function(cz) {
            var Dd = EW(cz.headers);
            if (!EY(cz.url) && !Dd) return il.DA.dz(cz);
            return eE.DL(cz.mode, Dd, cz)
        };
        var EU = function(dm) {
            var cE = CZ[dm];
            if (!cE) return;
            if ( !! cE.req) cE.req.hp();
            delete CZ[dm]
        };
        var Eh = function(dm, cF) {
            var cE = CZ[dm];
            if (!cE) return;
            EU(dm);
            try {
                var bX = {
                    type: cF,
                    result: arguments[2]
                };
                jG(bX);
                if (!bX.stopped)(cE[cF] || vy)(bX.result)
            } catch(ex) {}
        };
        var ET = function(dm, cA) {
            Eh(dm, "onload", cA)
        };
        var ES = function(dm, d$) {
            Eh(dm, "onerror", d$)
        };
        return function(cU, cz) {
            cz = cz || {};
            var dm = zB.eM(),
            cE = {
                onload: cz.onload || vy,
                onerror: cz.onerror || vy
            };
            CZ[dm] = cE;
            cz.onload = ET.cC(null, dm);
            cz.onerror = ES.cC(null, dm);
            if ( !! cz.query) {
                var iI = cU.indexOf("?") < 0 ? "?": "&",
                fF = cz.query;
                if (zB.mB(fF)) fF = zB.nL(fF);
                cU += iI + fF
            }
            cz.url = cU;
            cE.req = EV(cz);
            cE.req.pE(cz.data);
            return dm
        }
    } ();
    vC.s_ = function(ff, cz) {
        var cI = {
            mode: 0,
            type: "text",
            query: null,
            headers: {},
            onload: null,
            onerror: null,
            onuploading: null,
            onbeforerequest: null
        };
        NEJ.EX(cI, cz);
        cI.data = ff;
        cI.method = "POST";
        cI.timeout = 0;
        cI.headers[rl.gJ] = rl.iH;
        return vC.hk(ff.action, cI)
    }
})(); (function() {
    var pW = NEJ.P,
    vy = NEJ.F,
    rl = pW("nej.g"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    mo = pW("nej.ut"),
    il = pW("nej.ut.j"),
    tm,
    Fm = 6e4;
    il.hF = NEJ.C();
    tm = il.hF.dy(mo.et);
    tm.zW = function() {
        this.CU();
        this.hH = {
            onerror: this.qG.cC(this),
            onloaded: this.qF.cC(this)
        };
        if (!this.constructor.dj) this.constructor.dj = {
            loaded: {}
        }
    };
    tm.dD = function(cz) {
        this.CH(cz);
        this.gk = cz.version;
        this.hB = cz.timeout;
        this.hH.version = this.gk;
        this.hH.timeout = this.hB
    };
    tm.nz = function(cD) {
        delete this.constructor.dj[cD]
    };
    tm.f_ = function(cD) {
        return this.constructor.dj[cD]
    };
    tm.nB = function(cD, cA) {
        this.constructor.dj[cD] = cA
    };
    tm.jl = vy;
    tm.nE = function(cY) {
        jn.fJ(cY)
    };
    tm.jj = function(cY) {
        cY.src = this.ee;
        document.head.appendChild(cY)
    };
    tm.qD = function() {
        var cE = this.f_(this.ee);
        if (!cE) return;
        window.clearTimeout(cE.timer);
        this.nE(cE.request);
        delete cE.bind;
        delete cE.timer;
        delete cE.request;
        this.nz(this.ee);
        this.f_("loaded")[this.ee] = !0
    };
    tm.iE = function(cV) {
        var cE = this.f_(this.ee);
        if (!cE) return;
        var cB = cE.bind;
        this.qD();
        if ( !! cB && cB.length > 0) {
            var dv;
            while (cB.length) {
                dv = cB.shift();
                try {
                    dv.dR(cV, arguments[1])
                } catch(ex) {}
                dv.hp()
            }
        }
    };
    tm.fA = function(d$) {
        this.iE("onerror", d$)
    };
    tm.nR = function() {
        this.iE("onloaded")
    };
    tm.qC = function(cU) {
        this.constructor.dz(this.hH).jg(cU)
    };
    tm.nX = function(d$) {
        var cE = this.f_(this.dL);
        if (!cE) return;
        if ( !! d$) cE.error++;
        cE.loaded++;
        if (cE.loaded < cE.total) return;
        this.nz(this.dL);
        this.dR(cE.error > 0 ? "onerror": "onloaded")
    };
    tm.qG = function(d$) {
        this.nX(!0)
    };
    tm.qF = function() {
        this.nX()
    };
    tm.jg = function(cU) {
        cU = zB.tf(cU);
        if (!cU) {
            this.dR("onerror", {
                code: rl.jX,
                message: "请指定要载入的资源地址！"
            });
            return
        }
        this.ee = cU;
        if ( !! this.gk) this.ee += (this.ee.indexOf("?") < 0 ? "?": "&") + this.gk;
        if (this.f_("loaded")[this.ee]) {
            try {
                this.dR("onloaded")
            } catch(ex) {}
            this.hp();
            return
        }
        var cE = this.f_(this.ee),
        cY;
        if ( !! cE) {
            cE.bind.unshift(this);
            cE.timer = window.clearTimeout(cE.timer)
        } else {
            cY = this.jl();
            cE = {
                request: cY,
                bind: [this]
            };
            this.nB(this.ee, cE);
            jn.cM(cY, "load", this.nR.cC(this));
            jn.cM(cY, "error", this.fA.cC(this, {
                code: rl.fO,
                message: "无法加载指定资源文件[" + this.ee + "]！"
            }))
        }
        if (this.hB != 0) cE.timer = window.setTimeout(this.fA.cC(this, {
            code: rl.jW,
            message: "指定资源文件[" + this.ee + "]载入超时！"
        }), this.hB || Fm);
        if ( !! cY) this.jj(cY);
        this.dR("onloading")
    };
    tm.Az = function(cB) {
        if (!cB || !cB.length) {
            this.dR("onerror", {
                code: rl.jX,
                message: "请指定要载入的资源队列！"
            });
            return
        }
        this.dL = zB.eM();
        var cE = {
            error: 0,
            loaded: 0,
            total: cB.length
        };
        this.nB(this.dL, cE);
        for (var i = 0,
        l = cB.length; i < l; i++) {
            if (!cB[i]) {
                cE.total--;
                continue
            }
            this.qC(cB[i])
        }
        this.dR("onloading")
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    dl = pW("nej.e"),
    il = pW("nej.ut.j"),
    Dj;
    il.oe = NEJ.C();
    Dj = il.oe.dy(il.hF);
    Dj.jl = function() {
        var fm = dl.gy("iframe");
        fm.style.display = "none";
        return fm
    };
    Dj.fA = function(d$) {
        var fm = (this.f_(this.ee) || ll).request;
        this.iE("onerror", d$);
        dl.fk(fm)
    };
    Dj.nR = function() {
        var eL = null,
        fm = (this.f_(this.ee) || ll).request;
        try {
            eL = fm.contentWindow.document.body
        } catch(ex) {}
        this.iE("onloaded", eL);
        dl.fk(fm)
    }
})(); (function() {
    var pW = NEJ.P,
    dl = pW("nej.e"),
    il = pW("nej.ut.j"),
    DD;
    il.lo = NEJ.C();
    DD = il.lo.dy(il.hF);
    DD.jl = function() {
        return dl.gy("link")
    };
    DD.jj = function(cY) {
        cY.href = this.ee;
        document.head.appendChild(cY)
    }
})(); (function() {
    var pW = NEJ.P,
    dl = pW("nej.e"),
    il = pW("nej.ut.j"),
    Di;
    il.Aj = NEJ.C();
    Di = il.Aj.dy(il.hF);
    Di.dD = function(cz) {
        this.CH(cz);
        this.oB = cz.async;
        this.lF = cz.charset;
        this.hH.async = !1;
        this.hH.charset = this.lF
    };
    Di.jl = function() {
        var cY = dl.gy("script");
        if (this.oB != null) cY.async = !!this.oB;
        if (this.lF != null) cY.charset = this.lF;
        return cY
    };
    Di.nE = function(cY) {
        dl.fk(cY)
    }
})(); (function() {
    var pW = NEJ.P,
    vC = pW("nej.j"),
    il = pW("nej.ut.j");
    vC.qB = function(cU, cz) {
        il.Aj.dz(cz).jg(cU)
    };
    vC.lJ = function(cB, cz) {
        il.Aj.dz(cz).Az(cB)
    };
    vC.sU = function(cU, cz) {
        il.lo.dz(cz).jg(cU)
    };
    vC.qw = function(cB, cz) {
        il.lo.dz(cz).Az(cB)
    };
    vC.qu = function(cU, cz) {
        il.oe.dz(cz).jg(cU)
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    vC = pW("nej.j"),
    mo = pW("nej.ut"),
    cE = {},
    wn = +(new Date) + "-";
    dl.f$ = function() {
        var qH = 0;
        var vP = function() {
            if (qH > 0) return;
            qH = 0;
            document.ontemplateready();
            jn.fJ(document, "templateready")
        };
        var Dc = function(ev) {
            var eJ = dl.gl(ev, "src");
            if (!eJ) return;
            var np = ev.ownerDocument.location.href;
            eJ = eJ.split(",");
            zB.rv(eJ,
            function(zV, cX, cB) {
                cB[cX] = zB.tf(zV, np)
            });
            return eJ
        };
        var wP = function(ev) {
            if (!ev) return;
            var eJ = Dc(ev);
            if ( !! eJ) vC.qw(eJ, {
                version: dl.gl(ev, "version")
            });
            dl.l$(ev.value)
        };
        var wQ = function(zV) {
            qH--;
            dl.l_(zV);
            vP()
        };
        var wR = function(ev) {
            if (!ev) return;
            var eJ = Dc(ev),
            fE = ev.value;
            if ( !! eJ) {
                qH++;
                var cz = {
                    version: dl.gl(ev, "version"),
                    onloaded: wQ.cC(null, fE)
                };
                window.setTimeout(vC.lJ.cC(vC, eJ, cz), 0);
                return
            }
            dl.l_(fE)
        };
        var wS = function(eL) {
            qH--;
            dl.f$(eL);
            vP()
        };
        var wT = function(ev) {
            if (!ev) return;
            var eJ = Dc(ev)[0];
            if ( !! eJ) {
                qH++;
                var cz = {
                    version: dl.gl(ev, "version"),
                    onloaded: wS
                };
                window.setTimeout(vC.qu.cC(vC, eJ, cz), 0)
            }
        };
        var ER = function(dU, fu) {
            qH--;
            dl.ki(dU, fu || "");
            vP()
        };
        var EQ = function(ev) {
            if (!ev || !ev.id) return;
            var dU = ev.id,
            eJ = Dc(ev)[0];
            if ( !! eJ) {
                qH++;
                var cU = eJ + (eJ.indexOf("?") < 0 ? "?": "&") + (dl.gl(ev, "version") || ""),
                cz = {
                    type: "text",
                    method: "GET",
                    onload: ER.cC(null, dU)
                };
                window.setTimeout(vC.hk.cC(vC, cU, cz), 0)
            }
        };
        var wU = function(cQ) {
            var cF = cQ.name.toLowerCase();
            switch (cF) {
            case "jst":
                dl.ju(cQ, !0);
                return;
            case "txt":
                dl.ki(cQ.id, cQ.value || "");
                return;
            case "ntp":
                dl.eY(cQ.value || "", cQ.id);
                return;
            case "js":
                wR(cQ);
                return;
            case "css":
                wP(cQ);
                return;
            case "html":
                wT(cQ);
                return;
            case "res":
                EQ(cQ);
                return
            }
        };
        mo.vY.dz({
            element:
            document,
            event: "templateready",
            oneventadd: function() {
                vP()
            }
        });
        return function(_) {
            _ = dl.cK(_);
            if ( !! _) {
                var cB = _.tagName == "TEXTAREA" ? [_] : _.getElementsByTagName("textarea");
                zB.rv(cB, wU);
                dl.fk(_, !0)
            }
            vP()
        }
    } ();
    dl.ki = function(cD, zV) {
        cE[cD] = zV || ""
    };
    dl.qq = function(cD) {
        return cE[cD] || ""
    };
    dl.eY = function(_, cD) {
        cD = cD || zB.eM();
        _ = dl.cK(_) || _;
        dl.ki(wn + cD, _);
        dl.iT(_);
        return cD
    };
    dl.gn = function(cD) {
        if (!cD) return null;
        cD = wn + cD;
        var zV = dl.qq(cD);
        if (!zV) return null;
        if (zB.hz(zV)) {
            zV = dl.fH(zV);
            dl.ki(cD, zV)
        }
        return zV.cloneNode(!0)
    };
    dl.jH = function() {
        var jG = function(zV, cD) {
            return cD == "offset" || cD == "limit"
        };
        return function(cB, ek, cz) {
            var df = [];
            if (!cB || !cB.length || !ek) return df;
            cz = cz || ll;
            var lf = cB.length,
            jC = parseInt(cz.offset) || 0,
            fi = Math.min(lf, jC + (parseInt(cz.limit) || lf)),
            jw = {
                total: cB.length,
                range: [jC, fi]
            };
            NEJ.X(jw, cz, jG);
            for (var i = jC,
            dv; i < fi; i++) {
                jw.index = i;
                jw.data = cB[i];
                dv = ek.dz(jw);
                var dU = dv.FM();
                cE[dU] = dv;
                dv.hp = dv.hp.ed(function(bX) {
                    delete cE[dU];
                    delete dv.hp
                });
                df.push(dv)
            }
            return df
        }
    } ();
    dl.FO = function(dU) {
        return cE[dU]
    }
})(); (function() {
    var e = NEJ.P("nej.p"),
    u = NEJ.P("yxp.u"),
    j = NEJ.P("nej.j");
    var qj = {
        ap1: {
            sale: .75,
            desc: "金账户特惠",
            vc: "ZFB1",
            pclass: "alipay-big-photo",
            indexUrl: "/indexAP.html",
            desc2: "享受支付宝金账户特惠，首次购物75折，以后85折"
        },
        ap2: {
            sale: .85,
            desc: "金账户特惠",
            vc: "ZFB2",
            pclass: "alipay-big-photo",
            indexUrl: "/indexAP.html",
            desc2: "享受支付宝金账户特惠，首次购物75折，以后85折"
        },
        ma1: {
            sale: .75,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO1",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        ma2: {
            sale: .7,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO2",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        ma3: {
            sale: .6,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO3",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        ma4: {
            sale: .55,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO4",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        qq1: {
            sale: .65,
            desc: "QQ黄钻特惠",
            vc: "qqlv7",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        },
        qq2: {
            sale: .7,
            desc: "QQ黄钻特惠",
            vc: "qqlv3456",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        },
        qq3: {
            sale: .75,
            desc: "QQ黄钻特惠",
            vc: "qqlv12",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        },
        qq4: {
            sale: .9,
            desc: "QQ用户特惠",
            vc: "qqlv0",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        }
    };
    u.mm = function() {
        var fB = window.navigator.userAgent;
        var mo = "0";
        if (fB.indexOf("TencentTraveler") >= 0 || e.gN.browser == "ie" && (external.gbGetVersion || external.max_language_id)) {
            mo = (new Date).getTime()
        }
        return "&t=" + mo
    };
    u.kL = function(hC, qg, em) {
        if ((hC == "ma1" || hC == "ma2" || hC == "ma3" || hC == "ma4") && em >= 1400 && em <= 1403) {
            if (em == 1401 || em == 1403) return [29, "邮箱等级特惠"];
            else return [43, "邮箱等级特惠"]
        } else {
            var mt = qj[hC];
            var sd = em == 1406 || em >= 2e4 ? qg: Math.floor(mt.sale * parseFloat(qg) * 10) / 10;
            return [sd, mt.desc]
        }
    };
    u.ta = function(hC) {
        return qj[hC]
    };
    u.hE = function() {
        return j.hw("S_INFO") != ""
    };
    u.kX = function() {
        var iU = j.hw("P_INFO") || "",
        cX = iU.indexOf("|");
        if (cX > 0) {
            iU = iU.substring(0, cX) + ""
        }
        return iU || ""
    };
    u.tQ = function(hj) {
        if (hj) {
            if (hj.click) {
                hj.click()
            } else {
                var bX = document.createEvent("MouseEvents");
                bX.initEvent("click", true, true);
                hj.dispatchEvent(bX)
            }
        }
    };
    u.pN = function(cD) {
        var xJ = {
            sto: "普通快递",
            common: "普通快递",
            yd: "普通快递",
            ems_hz: "普通快递",
            shunfeng: "顺丰快递",
            "shunfeng-tc": "顺丰快递",
            zjs: "宅急送",
            ems_posthaste: "EMS特快",
            eyb: "E邮宝"
        };
        return xJ[cD]
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    vy = NEJ.F,
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    mo = pW("nej.ut"),
    il = pW("nej.ui"),
    vw;
    il.gr = NEJ.C();
    vw = il.gr.dy(mo.et);
    vw.zW = function() {
        this.CU();
        dl.rK();
        this.mA();
        this.fD()
    };
    vw.dD = function(cz) {
        this.CH(cz);
        this.EO(cz.clazz);
        this.ls(cz.parent)
    };
    vw.eF = function() {
        this.CI();
        this.mG();
        delete this.fq;
        dl.iT(this.cN);
        dl.nf(this.cN, this.lq);
        delete this.lq
    };
    vw.mA = vy;
    vw.fD = function() {
        if (!this.gs) this.Es();
        this.cN = dl.gn(this.gs);
        if (!this.cN) this.cN = dl.gy("div", this.fX);
        dl.dw(this.cN, this.fX)
    };
    vw.Es = vy;
    vw.EO = function(Ax) {
        this.lq = Ax || "";
        dl.dw(this.cN, this.lq)
    };
    vw.qf = function() {
        if (!this.fX) return;
        dl.dw(this.fq, this.fX + "-parent")
    };
    vw.mG = function() {
        if (!this.fX) return;
        dl.nf(this.fq, this.fX + "-parent")
    };
    vw.sW = function() {
        return this.cN
    };
    vw.ls = function(ey) {
        if (!this.cN) return;
        this.mG();
        if (zB.fY(ey)) {
            this.fq = ey(this.cN)
        } else {
            this.fq = dl.cK(ey);
            if ( !! this.fq) this.fq.appendChild(this.cN)
        }
        this.qf()
    };
    vw.dH = function() {
        if (!this.fq || !this.cN || this.cN.parentNode == this.fq) return;
        this.fq.appendChild(this.cN)
    };
    vw.dZ = function() {
        dl.iT(this.cN)
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("nej.ui"),
    pl = NEJ.P("nej.p"),
    yui = NEJ.P("yxp.ui"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace>{_width:0px;text-align:left;background-color:#fff;border:1px solid #e5e5e5;z-index:9999;position:fixed;_position:absolute;top:50%;left:50%;zoom:1;border-radius:4px;-moz-border-radius:4px;-webkit-border-radius:4px;box-shadow:0 0 2px #e5e5e5;-moz-box-shadow:0 0 2px #e5e5e5;-webkitbox-shadow:2px 2px #e5e5e5;}.#<uispace>:after{clear:both;content:".";display:block;height:0;visibility:hidden;}.#<uispace> div.title{position:relavive;display:none;font-size:24px;height:24px;line-height:24px;font-family:"微软雅黑";padding:20px 20px;border-bottom:1px solid #e5e5e5;color:#777;}.#<uispace> div.title:after{clear:both;content:".";display:block;height:0;visibility:hidden;}.#<uispace> div.title span.close{color:#afb0b4;font-family:"arial";text-align:center;display:block;width:20px;height:24px;font-size:40px;cursor:pointer;position:absolute;top:17px;right:19px;}.#<uispace> div.title span.close:hover{color:#8a8e97;}.#<uispace> .content{line-height:0px;min-width:300px;_width:300px;position:relavive;padding:20px 20px;background-color:#fff;zoom:1}.#<uispace> .content:after{clear:both;content:".";display:block;height:0;visibility:hidden;}');
    var zZ = e.eY('<div class="' + ec + '"><div class="title"><span class="close mark-close">&times;</span><span class="mark-title">&nbsp;</span></div><div class="content"></div></div>');
    yui.gx = NEJ.C();
    cH = yui.gx.dy(p.gr, !0);
    dc = yui.gx.dG;
    cH.zW = function(cI) {
        cI = cI || {};
        cI.parent = cI.parent || document.body;
        this.fX = ec;
        this.gs = zZ;
        this.fq = cI.parent;
        this.CU(cI);
        this.dX(cI);
        this.eh(cI)
    };
    cH.dX = function(cI) {
        if (cI.title) {
            e.hh(this.AK(cI.title), "display", "block")
        }
    };
    cH.eh = function(cI) {
        var mW = e.cT(this.cN, "mark-close");
        for (var i = 0; i < mW.length; i++) v.cM(mW[i], "click", this.dZ.cC(this))
    };
    cH.hQ = function() {
        var cP = e.d_("div.content", this.cN) || e.cT(this.cN, "content");
        return cP[0]
    };
    cH.AK = function(AL) {
        var mZ = e.d_("span.mark-title", this.cN) || e.cT(this.cN, "mark-title");
        mZ[0].innerHTML = AL;
        return mZ[0].parentNode
    };
    cH.dH = function() {
        dc.dH.apply(this, arguments);
        this.cN.style.width = this.cN.offsetWidth + "px";
        try {
            if (pl.gN.browser == "ie" && pl.gN.version == 6) {
                document.documentElement.scrollTop = document.body.scrollTop = 0
            }
        } catch(ex) {}
        this.cN.style.marginTop = "-" + parseInt(this.cN.offsetHeight / 2) + "px";
        this.cN.style.marginLeft = "-" + parseInt(this.cN.offsetWidth / 2) + "px";
        return this
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    p = NEJ.P("nej.ui"),
    pl = NEJ.P("nej.p"),
    yui = NEJ.P("yxp.ui"),
    cH = null,
    dc = null;
    yui.g_ = NEJ.C();
    cH = yui.g_.dy(p.gr, !0);
    dc = yui.g_.dG;
    cH.dD = function(cI) {
        cI = cI || {};
        cI.parent = cI.parent || document.body;
        var m_ = cI.opacity || .6;
        var p$ = cI.bgc || "#000";
        var Ab = /^https/i.test(window.location.href || "") ? "javascript:false": "about:blank";
        this.vb = e.fH('<iframe style="z-index:9997;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;filter:alpha(opacity=0);" src="' + Ab + '"></iframe>');
        this.fX = e.fR(".#<uispace>{background:" + p$ + ";position:fixed;_position:absolute;height:100%;width:100%;z-index:9998;zoom:1;text-align:left;top:0px;left:0px;opacity:" + m_ + ";filter:alpha(opacity=" + m_ * 100 + ");}");
        this.gs = e.eY('<div class="' + this.fX + '"></div>');
        this.CU(cI);
        this.CH(cI)
    };
    cH.dH = function() {
        dc.dH.apply(this, arguments);
        try {
            if (pl.gN.browser == "ie") this.fq.appendChild(this.vb)
        } catch(ex) {}
        return this
    };
    cH.dZ = function() {
        dc.dZ.apply(this, arguments);
        try {
            if (pl.gN.browser == "ie") e.iT(this.vb)
        } catch(ex) {}
        return this
    }
})(); (function() {
    var o = NEJ.O,
    f = NEJ.F,
    g = NEJ.P("nej.g"),
    j = NEJ.P("nej.j"),
    u = NEJ.P("nej.u"),
    w = NEJ.P("dwr.engine"),
    kQ,
    nO = f,
    nN = {},
    dj = {},
    dk = null;
    j.s$ = function(gV) {
        nO = u.fY(gV) ? gV: f
    };
    j.sY = function(cD, iP) {
        nN[cD] = iP
    };
    j.sX = function(dU) {
        kQ = dU || ""
    };
    j.pV = function() {
        if ( !! dk) return;
        dk = {
            h: {},
            p: 0,
            m: {
                callCount: 0,
                scriptSessionId: "${scriptSessionId}190",
                httpSessionId: j.hw("JSESSIONID")
            },
            r: {
                script: !1,
                sync: !1,
                method: "POST",
                timeout: null,
                proxy: !0,
                onbeforerequest: null
            }
        }
    };
    j.ni = function(cU, cz) {
        var iQ = (cU || "").split(".");
        if (!iQ || iQ.length != 2) return;
        var nd = !1;
        if (!dk) {
            nd = !0;
            j.pV()
        }
        cz = cz || o;
        dk.u = (cz.path || "/dwr/call/plaincall/") + (cz.query && "?" + cz.query || "");
        NEJ.EX(dk.r, cz);
        var eo = dk.r.headers || {};
        if ( !! cz.headers) for (var x in cz.headers) eo[x] = cz.headers[x];
        eo[g.gJ] = g.qx;
        dk.r.headers = eo;
        var dx = "c" + dk.m.callCount;
        dk.m[dx + "-scriptName"] = iQ[0];
        dk.m[dx + "-methodName"] = iQ[1];
        dk.m[dx + "-id"] = dk.m.callCount;
        dk.h[dk.m.callCount] = {
            c: cz.onload || f,
            e: cz.onerror || f
        };
        var jO = cz.param;
        if ( !! jO && jO.length > 0) for (var i = 0,
        l = jO.length,
        zV; i < l; i++) {
            zV = kc(jO[i], dx); !! zV && (dk.m[dx + "-param" + i] = zV)
        }
        dk.m.callCount++;
        if (nd) j.p_()
    };
    j.p_ = function() {
        if (!dk || !dk.u) {
            dk = null;
            return
        }
        var du = kQ || u.eM(6);
        kQ = 0;
        dk.m.batchId = du;
        dj[du] = dk;
        dk = null;
        jj(du)
    };
    var mV = function(du) {
        var dg = dj[du];
        if (!dg) return;
        delete dg.h;
        delete dg.m;
        delete dj[du]
    };
    var kc = function(cA, dx) {
        if (cA == null) return "null:null";
        if (u.rJ(cA)) return "boolean:" + !!cA;
        if (u.mU(cA)) return "number:" + cA;
        if (u.hz(cA)) return "string:" + encodeURIComponent(cA);
        if (u.my(cA)) return "Date:" + cA.getTime();
        if (u.kl(cA)) return qd(cA, dx);
        if (u.mB(cA)) return qe(cA, dx);
        if (u.fY(cA, "function")) return "";
        return "default:" + cA
    };
    var qd = function(cB, dx) {
        var df = [];
        for (var i = 0,
        l = cB.length,
        gv, zV; i < l; i++) {
            dk.p++;
            gv = dx + "-e" + dk.p;
            zV = kc(cB[i], dx);
            if (!zV) continue;
            dk.m[gv] = zV;
            df.push("reference:" + gv)
        }
        return "Array:[" + df.join(",") + "]"
    };
    var qe = function(dd, dx) {
        var df = [],
        gv,
        zV;
        for (var p in dd) {
            dk.p++;
            gv = dx + "-e" + dk.p;
            zV = kc(dd[p], dx);
            if (!zV) continue;
            dk.m[gv] = zV;
            df.push(encodeURIComponent(p) + ":reference:" + gv)
        }
        return "Object_Object:{" + df.join(",") + "}"
    };
    var kO = function(cA, iI) {
        if (!cA) return null;
        var df = [],
        qh = iI == "&";
        for (var p in cA) df.push(!qh ? p + "=" + cA[p] : encodeURIComponent(p) + "=" + encodeURIComponent(cA[p]));
        return df.join(iI || "\n")
    };
    var jj = function(du) {
        var dg = dj[du];
        if (!dg) return;
        dg.u = dg.u.replace(/(\?|$)/, (dg.m.callCount > 1 ? "Multiple." + dg.m.callCount: dg.m["c0-scriptName"] + "." + dg.m["c0-methodName"]) + ".dwr$1");
        var cI = dg.r,
        iP = nN[cI.proxy];
        if ( !! iP) {
            iP.sV({
                url: dg.u,
                param: kO(dg.m, "&amp;")
            });
            delete dg.r;
            return
        }
        var gG = !!cI.script,
        ml = cI.method == "POST";
        delete dg.r;
        delete cI.script;
        cI.method = cI.method.toUpperCase();
        cI.onerror = qk.cC(null, du);
        if (gG || !ml) {
            dg.u += (dg.u.indexOf("?") >= 0 ? "&": "?") + kO(dg.m, "&")
        }
        if (gG) {
            j.qB(dg.u, cI)
        } else {
            cI.onload = ql.cC(null, du);
            cI.data = ml ? kO(dg.m) : null;
            j.hk(dg.u, cI)
        }
    };
    var fA = function(du, iX, d$) {
        var dg = dj[du];
        if (!dg || nO(d$)) return;
        var zX = dg.h[iX];
        if (!zX) return;
        try { (zX.e || f)(d$)
        } catch(ex) {}
    };
    var iY = function(du, d$) {
        var dg = dj[du];
        if (!dg) return;
        var zX = dg.h;
        for (var x in zX) fA(du, x, d$)
    };
    var qo = function(du, iX, cA) {
        var dg = dj[du];
        if (!dg) return;
        try { (dg.h[iX].c || f)(cA)
        } catch(ex) {
            fA(du, iX, {
                code: g.qi,
                message: "DWR回调执行异常：" + ex.message || ex
            })
        }
    };
    var ql = function(du, fu) {
        try { !! fu && fu.search("//#DWR") >= 0 ? (new Function(fu))() : iY(du, {
                code: g.fO,
                message: "DWR请求返回数据不合法!"
            })
        } catch(ex) {
            iY(du, {
                code: g.pS,
                message: "DWR返回脚本执行异常：" + (ex.message || ex)
            })
        } finally {
            mV(du)
        }
    };
    var qk = function(du, d$) {
        iY(du, d$);
        mV(du)
    };
    w["_remoteHandleCallback"] = qo;
    w["_remoteHandleException"] = fA;
    w["_remoteHandleBatchException"] = iY
})(); (function(a, b) {
    function cy(a) {
        return f.isWindow(a) ? a: a.nodeType === 9 ? a.defaultView || a.parentWindow: !1
    }
    function cu(a) {
        if (!cj[a]) {
            var b = c.body,
            d = f("<" + a + ">").appendTo(b),
            e = d.css("display");
            d.remove();
            if (e === "none" || e === "") {
                ck || (ck = c.createElement("iframe"), ck.frameBorder = ck.width = ck.height = 0),
                b.appendChild(ck);
                if (!cl || !ck.createElement) cl = (ck.contentWindow || ck.contentDocument).document,
                cl.write((f.support.boxModel ? "<!doctype html>": "") + "<html><body>"),
                cl.close();
                d = cl.createElement(a),
                cl.body.appendChild(d),
                e = f.css(d, "display"),
                b.removeChild(ck)
            }
            cj[a] = e
        }
        return cj[a]
    }
    function ct(a, b) {
        var c = {};
        f.each(cp.concat.apply([], cp.slice(0, b)),
        function() {
            c[this] = a
        });
        return c
    }
    function cs() {
        cq = b
    }
    function cr() {
        setTimeout(cs, 0);
        return cq = f.now()
    }
    function ci() {
        try {
            return new a.ActiveXObject("Microsoft.XMLHTTP")
        } catch(b) {}
    }
    function ch() {
        try {
            return new a.XMLHttpRequest
        } catch(b) {}
    }
    function cb(a, c) {
        a.dataFilter && (c = a.dataFilter(c, a.dataType));
        var d = a.dataTypes,
        e = {},
        g, h, i = d.length,
        j, k = d[0],
        l,
        m,
        n,
        o,
        p;
        for (g = 1; g < i; g++) {
            if (g === 1) for (h in a.converters) typeof h == "string" && (e[h.toLowerCase()] = a.converters[h]);
            l = k,
            k = d[g];
            if (k === "*") k = l;
            else if (l !== "*" && l !== k) {
                m = l + " " + k,
                n = e[m] || e["* " + k];
                if (!n) {
                    p = b;
                    for (o in e) {
                        j = o.split(" ");
                        if (j[0] === l || j[0] === "*") {
                            p = e[j[1] + " " + k];
                            if (p) {
                                o = e[o],
                                o === !0 ? n = p: p === !0 && (n = o);
                                break
                            }
                        }
                    }
                } ! n && !p && f.error("No conversion from " + m.replace(" ", " to ")),
                n !== !0 && (c = n ? n(c) : p(o(c)))
            }
        }
        return c
    }
    function ca(a, c, d) {
        var e = a.contents,
        f = a.dataTypes,
        g = a.responseFields,
        h, i, j, k;
        for (i in g) i in d && (c[g[i]] = d[i]);
        while (f[0] === "*") f.shift(),
        h === b && (h = a.mimeType || c.getResponseHeader("content-type"));
        if (h) for (i in e) if (e[i] && e[i].test(h)) {
            f.unshift(i);
            break
        }
        if (f[0] in d) j = f[0];
        else {
            for (i in d) {
                if (!f[0] || a.converters[i + " " + f[0]]) {
                    j = i;
                    break
                }
                k || (k = i)
            }
            j = j || k
        }
        if (j) {
            j !== f[0] && f.unshift(j);
            return d[j]
        }
    }
    function b_(a, b, c, d) {
        if (f.isArray(b)) f.each(b,
        function(b, e) {
            c || bD.test(a) ? d(a, e) : b_(a + "[" + (typeof e == "object" ? b: "") + "]", e, c, d)
        });
        else if (!c && f.type(b) === "object") for (var e in b) b_(a + "[" + e + "]", b[e], c, d);
        else d(a, b)
    }
    function b$(a, c) {
        var d, e, g = f.ajaxSettings.flatOptions || {};
        for (d in c) c[d] !== b && ((g[d] ? a: e || (e = {}))[d] = c[d]);
        e && f.extend(!0, a, e)
    }
    function bZ(a, c, d, e, f, g) {
        f = f || c.dataTypes[0],
        g = g || {},
        g[f] = !0;
        var h = a[f],
        i = 0,
        j = h ? h.length: 0,
        k = a === bS,
        l;
        for (; i < j && (k || !l); i++) l = h[i](c, d, e),
        typeof l == "string" && (!k || g[l] ? l = b: (c.dataTypes.unshift(l), l = bZ(a, c, d, e, l, g))); (k || !l) && !g["*"] && (l = bZ(a, c, d, e, "*", g));
        return l
    }
    function bY(a) {
        return function(b, c) {
            typeof b != "string" && (c = b, b = "*");
            if (f.isFunction(c)) {
                var d = b.toLowerCase().split(bO),
                e = 0,
                g = d.length,
                h,
                i,
                j;
                for (; e < g; e++) h = d[e],
                j = /^\+/.test(h),
                j && (h = h.substr(1) || "*"),
                i = a[h] = a[h] || [],
                i[j ? "unshift": "push"](c)
            }
        }
    }
    function bB(a, b, c) {
        var d = b === "width" ? a.offsetWidth: a.offsetHeight,
        e = b === "width" ? 1 : 0,
        g = 4;
        if (d > 0) {
            if (c !== "border") for (; e < g; e += 2) c || (d -= parseFloat(f.css(a, "padding" + bx[e])) || 0),
            c === "margin" ? d += parseFloat(f.css(a, c + bx[e])) || 0 : d -= parseFloat(f.css(a, "border" + bx[e] + "Width")) || 0;
            return d + "px"
        }
        d = by(a, b);
        if (d < 0 || d == null) d = a.style[b];
        if (bt.test(d)) return d;
        d = parseFloat(d) || 0;
        if (c) for (; e < g; e += 2) d += parseFloat(f.css(a, "padding" + bx[e])) || 0,
        c !== "padding" && (d += parseFloat(f.css(a, "border" + bx[e] + "Width")) || 0),
        c === "margin" && (d += parseFloat(f.css(a, c + bx[e])) || 0);
        return d + "px"
    }
    function bo(a) {
        var b = c.createElement("div");
        bh.appendChild(b),
        b.innerHTML = a.outerHTML;
        return b.firstChild
    }
    function bn(a) {
        var b = (a.nodeName || "").toLowerCase();
        b === "input" ? bm(a) : b !== "script" && typeof a.getElementsByTagName != "undefined" && f.grep(a.getElementsByTagName("input"), bm)
    }
    function bm(a) {
        if (a.type === "checkbox" || a.type === "radio") a.defaultChecked = a.checked
    }
    function bl(a) {
        return typeof a.getElementsByTagName != "undefined" ? a.getElementsByTagName("*") : typeof a.querySelectorAll != "undefined" ? a.querySelectorAll("*") : []
    }
    function bk(a, b) {
        var c;
        b.nodeType === 1 && (b.clearAttributes && b.clearAttributes(), b.mergeAttributes && b.mergeAttributes(a), c = b.nodeName.toLowerCase(), c === "object" ? b.outerHTML = a.outerHTML: c !== "input" || a.type !== "checkbox" && a.type !== "radio" ? c === "option" ? b.selected = a.defaultSelected: c === "input" || c === "textarea" ? b.defaultValue = a.defaultValue: c === "script" && b.text !== a.text && (b.text = a.text) : (a.checked && (b.defaultChecked = b.checked = a.checked), b.value !== a.value && (b.value = a.value)), b.removeAttribute(f.expando), b.removeAttribute("_submit_attached"), b.removeAttribute("_change_attached"))
    }
    function bj(a, b) {
        if (b.nodeType === 1 && !!f.hasData(a)) {
            var c, d, e, g = f.cA(a),
            h = f.cA(b, g),
            i = g.events;
            if (i) {
                delete h.handle,
                h.events = {};
                for (c in i) for (d = 0, e = i[c].length; d < e; d++) f.event.add(b, c, i[c][d])
            }
            h.data && (h.data = f.extend({},
            h.data))
        }
    }
    function bi(a, b) {
        return f.nodeName(a, "table") ? a.getElementsByTagName("tbody")[0] || a.appendChild(a.ownerDocument.createElement("tbody")) : a
    }
    function U(a) {
        var b = V.split("|"),
        c = a.createDocumentFragment();
        if (c.createElement) while (b.length) c.createElement(b.pop());
        return c
    }
    function T(a, b, c) {
        b = b || 0;
        if (f.isFunction(b)) return f.grep(a,
        function(a, d) {
            var e = !!b.call(a, d, a);
            return e === c
        });
        if (b.nodeType) return f.grep(a,
        function(a, d) {
            return a === b === c
        });
        if (typeof b == "string") {
            var d = f.grep(a,
            function(a) {
                return a.nodeType === 1
            });
            if (O.test(b)) return f.filter(b, d, !c);
            b = f.filter(b, d)
        }
        return f.grep(a,
        function(a, d) {
            return f.inArray(a, b) >= 0 === c
        })
    }
    function S(a) {
        return ! a || !a.parentNode || a.parentNode.nodeType === 11
    }
    function K() {
        return ! 0
    }
    function J() {
        return ! 1
    }
    function n(a, b, c) {
        var d = b + "defer",
        e = b + "queue",
        g = b + "mark",
        h = f.cA(a, d);
        h && (c === "queue" || !f.cA(a, e)) && (c === "mark" || !f.cA(a, g)) && setTimeout(function() { ! f.cA(a, e) && !f.cA(a, g) && (f.removeData(a, d, !0), h.fire())
        },
        0)
    }
    function m(a) {
        for (var b in a) {
            if (b === "data" && f.isEmptyObject(a[b])) continue;
            if (b !== "toJSON") return ! 1
        }
        return ! 0
    }
    function l(a, c, d) {
        if (d === b && a.nodeType === 1) {
            var e = "data-" + c.replace(k, "-$1").toLowerCase();
            d = a.getAttribute(e);
            if (typeof d == "string") {
                try {
                    d = d === "true" ? !0 : d === "false" ? !1 : d === "null" ? null: f.isNumeric(d) ? +d: j.test(d) ? f.parseJSON(d) : d
                } catch(g) {}
                f.data(a, c, d)
            } else d = b
        }
        return d
    }
    function h(a) {
        var b = g[a] = {},
        c,
        d;
        a = a.split(/\s+/);
        for (c = 0, d = a.length; c < d; c++) b[a[c]] = !0;
        return b
    }
    var c = a.document,
    d = a.navigator,
    e = a.location,
    f = function() {
        function J() {
            if (!e.isReady) {
                try {
                    c.documentElement.doScroll("left")
                } catch(a) {
                    setTimeout(J, 1);
                    return
                }
                e.ready()
            }
        }
        var e = function(a, b) {
            return new e.fn.init(a, b, h)
        },
        f = a.jQuery,
        g = a.$,
        h,
        i = /^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,
        j = /\S/,
        k = /^\s+/,
        l = /\s+$/,
        m = /^<(\w+)\s*\/?>(?:<\/\1>)?$/,
        n = /^[\],:{}\s]*$/,
        o = /\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,
        p = /"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
        q = /(?:^|:|,)(?:\s*\[)+/g,
        r = /(webkit)[ \/]([\w.]+)/,
        s = /(opera)(?:.*version)?[ \/]([\w.]+)/,
        t = /(msie) ([\w.]+)/,
        u = /(mozilla)(?:.*? rv:([\w.]+))?/,
        v = /-([a-z]|[0-9])/ig,
        w = /^-ms-/,
        x = function(a, b) {
            return (b + "").toUpperCase()
        },
        y = d.userAgent,
        z,
        A,
        B,
        C = Object.prototype.toString,
        D = Object.prototype.hasOwnProperty,
        E = Array.prototype.push,
        F = Array.prototype.slice,
        G = String.prototype.trim,
        H = Array.prototype.indexOf,
        I = {};
        e.fn = e.prototype = {
            constructor: e,
            init: function(a, d, f) {
                var g, h, j, k;
                if (!a) return this;
                if (a.nodeType) {
                    this.context = this[0] = a,
                    this.length = 1;
                    return this
                }
                if (a === "body" && !d && c.body) {
                    this.context = c,
                    this[0] = c.body,
                    this.selector = a,
                    this.length = 1;
                    return this
                }
                if (typeof a == "string") {
                    a.charAt(0) !== "<" || a.charAt(a.length - 1) !== ">" || a.length < 3 ? g = i.exec(a) : g = [null, a, null];
                    if (g && (g[1] || !d)) {
                        if (g[1]) {
                            d = d instanceof e ? d[0] : d,
                            k = d ? d.ownerDocument || d: c,
                            j = m.exec(a),
                            j ? e.isPlainObject(d) ? (a = [c.createElement(j[1])], e.fn.attr.call(a, d, !0)) : a = [k.createElement(j[1])] : (j = e.buildFragment([g[1]], [k]), a = (j.cacheable ? e.clone(j.fragment) : j.fragment).childNodes);
                            return e.merge(this, a)
                        }
                        h = c.getElementById(g[2]);
                        if (h && h.parentNode) {
                            if (h.id !== g[2]) return f.find(a);
                            this.length = 1,
                            this[0] = h
                        }
                        this.context = c,
                        this.selector = a;
                        return this
                    }
                    return ! d || d.jquery ? (d || f).find(a) : this.constructor(d).find(a)
                }
                if (e.isFunction(a)) return f.ready(a);
                a.selector !== b && (this.selector = a.selector, this.context = a.context);
                return e.makeArray(a, this)
            },
            selector: "",
            jquery: "1.7.2",
            length: 0,
            size: function() {
                return this.length
            },
            toArray: function() {
                return F.call(this, 0)
            },
            get: function(a) {
                return a == null ? this.toArray() : a < 0 ? this[this.length + a] : this[a]
            },
            pushStack: function(a, b, c) {
                var d = this.constructor();
                e.isArray(a) ? E.apply(d, a) : e.merge(d, a),
                d.prevObject = this,
                d.context = this.context,
                b === "find" ? d.selector = this.selector + (this.selector ? " ": "") + c: b && (d.selector = this.selector + "." + b + "(" + c + ")");
                return d
            },
            each: function(a, b) {
                return e.each(this, a, b)
            },
            ready: function(a) {
                e.bindReady(),
                A.add(a);
                return this
            },
            eq: function(a) {
                a = +a;
                return a === -1 ? this.slice(a) : this.slice(a, a + 1)
            },
            first: function() {
                return this.eq(0)
            },
            last: function() {
                return this.eq( - 1)
            },
            slice: function() {
                return this.pushStack(F.apply(this, arguments), "slice", F.call(arguments).join(","))
            },
            map: function(a) {
                return this.pushStack(e.map(this,
                function(b, c) {
                    return a.call(b, c, b)
                }))
            },
            end: function() {
                return this.prevObject || this.constructor(null)
            },
            push: E,
            sort: [].sort,
            splice: [].splice
        },
        e.fn.init.prototype = e.fn,
        e.extend = e.fn.extend = function() {
            var a, c, d, f, g, h, i = arguments[0] || {},
            j = 1,
            k = arguments.length,
            l = !1;
            typeof i == "boolean" && (l = i, i = arguments[1] || {},
            j = 2),
            typeof i != "object" && !e.isFunction(i) && (i = {}),
            k === j && (i = this, --j);
            for (; j < k; j++) if ((a = arguments[j]) != null) for (c in a) {
                d = i[c],
                f = a[c];
                if (i === f) continue;
                l && f && (e.isPlainObject(f) || (g = e.isArray(f))) ? (g ? (g = !1, h = d && e.isArray(d) ? d: []) : h = d && e.isPlainObject(d) ? d: {},
                i[c] = e.extend(l, h, f)) : f !== b && (i[c] = f)
            }
            return i
        },
        e.extend({
            noConflict: function(b) {
                a.$ === e && (a.$ = g),
                b && a.jQuery === e && (a.jQuery = f);
                return e
            },
            isReady: !1,
            readyWait: 1,
            holdReady: function(a) {
                a ? e.readyWait++:e.ready(!0)
            },
            ready: function(a) {
                if (a === !0 && !--e.readyWait || a !== !0 && !e.isReady) {
                    if (!c.body) return setTimeout(e.ready, 1);
                    e.isReady = !0;
                    if (a !== !0 && --e.readyWait > 0) return;
                    A.fireWith(c, [e]),
                    e.fn.trigger && e(c).trigger("ready").off("ready")
                }
            },
            bindReady: function() {
                if (!A) {
                    A = e.Callbacks("once memory");
                    if (c.readyState === "complete") return setTimeout(e.ready, 1);
                    if (c.addEventListener) c.addEventListener("DOMContentLoaded", B, !1),
                    a.addEventListener("load", e.ready, !1);
                    else if (c.attachEvent) {
                        c.attachEvent("onreadystatechange", B),
                        a.attachEvent("onload", e.ready);
                        var b = !1;
                        try {
                            b = a.frameElement == null
                        } catch(d) {}
                        c.documentElement.doScroll && b && J()
                    }
                }
            },
            isFunction: function(a) {
                return e.type(a) === "function"
            },
            isArray: Array.isArray ||
            function(a) {
                return e.type(a) === "array"
            },
            isWindow: function(a) {
                return a != null && a == a.window
            },
            isNumeric: function(a) {
                return ! isNaN(parseFloat(a)) && isFinite(a)
            },
            type: function(a) {
                return a == null ? String(a) : I[C.call(a)] || "object"
            },
            isPlainObject: function(a) {
                if (!a || e.type(a) !== "object" || a.nodeType || e.isWindow(a)) return ! 1;
                try {
                    if (a.constructor && !D.call(a, "constructor") && !D.call(a.constructor.prototype, "isPrototypeOf")) return ! 1
                } catch(c) {
                    return ! 1
                }
                var d;
                for (d in a);
                return d === b || D.call(a, d)
            },
            isEmptyObject: function(a) {
                for (var b in a) return ! 1;
                return ! 0
            },
            error: function(a) {
                throw new Error(a)
            },
            parseJSON: function(b) {
                if (typeof b != "string" || !b) return null;
                b = e.trim(b);
                if (a.JSON && a.JSON.parse) return a.JSON.parse(b);
                if (n.test(b.replace(o, "@").replace(p, "]").replace(q, ""))) return (new Function("return " + b))();
                e.error("Invalid JSON: " + b)
            },
            parseXML: function(c) {
                if (typeof c != "string" || !c) return null;
                var d, f;
                try {
                    a.DOMParser ? (f = new DOMParser, d = f.parseFromString(c, "text/xml")) : (d = new ActiveXObject("Microsoft.XMLDOM"), d.async = "false", d.loadXML(c))
                } catch(g) {
                    d = b
                } (!d || !d.documentElement || d.getElementsByTagName("parsererror").length) && e.error("Invalid XML: " + c);
                return d
            },
            noop: function() {},
            globalEval: function(b) {
                b && j.test(b) && (a.execScript ||
                function(b) {
                    a.eval.call(a, b)
                })(b)
            },
            camelCase: function(a) {
                return a.replace(w, "ms-").replace(v, x)
            },
            nodeName: function(a, b) {
                return a.nodeName && a.nodeName.toUpperCase() === b.toUpperCase()
            },
            each: function(a, c, d) {
                var f, g = 0,
                h = a.length,
                i = h === b || e.isFunction(a);
                if (d) {
                    if (i) {
                        for (f in a) if (c.apply(a[f], d) === !1) break
                    } else for (; g < h;) if (c.apply(a[g++], d) === !1) break
                } else if (i) {
                    for (f in a) if (c.call(a[f], f, a[f]) === !1) break
                } else for (; g < h;) if (c.call(a[g], g, a[g++]) === !1) break;
                return a
            },
            trim: G ?
            function(a) {
                return a == null ? "": G.call(a)
            }: function(a) {
                return a == null ? "": (a + "").replace(k, "").replace(l, "")
            },
            makeArray: function(a, b) {
                var c = b || [];
                if (a != null) {
                    var d = e.type(a);
                    a.length == null || d === "string" || d === "function" || d === "regexp" || e.isWindow(a) ? E.call(c, a) : e.merge(c, a)
                }
                return c
            },
            inArray: function(a, b, c) {
                var d;
                if (b) {
                    if (H) return H.call(b, a, c);
                    d = b.length,
                    c = c ? c < 0 ? Math.max(0, d + c) : c: 0;
                    for (; c < d; c++) if (c in b && b[c] === a) return c
                }
                return - 1
            },
            merge: function(a, c) {
                var d = a.length,
                e = 0;
                if (typeof c.length == "number") for (var f = c.length; e < f; e++) a[d++] = c[e];
                else while (c[e] !== b) a[d++] = c[e++];
                a.length = d;
                return a
            },
            grep: function(a, b, c) {
                var d = [],
                e;
                c = !!c;
                for (var f = 0,
                g = a.length; f < g; f++) e = !!b(a[f], f),
                c !== e && d.push(a[f]);
                return d
            },
            map: function(a, c, d) {
                var f, g, h = [],
                i = 0,
                j = a.length,
                k = a instanceof e || j !== b && typeof j == "number" && (j > 0 && a[0] && a[j - 1] || j === 0 || e.isArray(a));
                if (k) for (; i < j; i++) f = c(a[i], i, d),
                f != null && (h[h.length] = f);
                else for (g in a) f = c(a[g], g, d),
                f != null && (h[h.length] = f);
                return h.concat.apply([], h)
            },
            guid: 1,
            proxy: function(a, c) {
                if (typeof c == "string") {
                    var d = a[c];
                    c = a,
                    a = d
                }
                if (!e.isFunction(a)) return b;
                var f = F.call(arguments, 2),
                g = function() {
                    return a.apply(c, f.concat(F.call(arguments)))
                };
                g.guid = a.guid = a.guid || g.guid || e.guid++;
                return g
            },
            access: function(a, c, d, f, g, h, i) {
                var j, k = d == null,
                l = 0,
                m = a.length;
                if (d && typeof d == "object") {
                    for (l in d) e.access(a, c, l, d[l], 1, h, f);
                    g = 1
                } else if (f !== b) {
                    j = i === b && e.isFunction(f),
                    k && (j ? (j = c, c = function(a, b, c) {
                        return j.call(e(a), c)
                    }) : (c.call(a, f), c = null));
                    if (c) for (; l < m; l++) c(a[l], d, j ? f.call(a[l], l, c(a[l], d)) : f, i);
                    g = 1
                }
                return g ? a: k ? c.call(a) : m ? c(a[0], d) : h
            },
            now: function() {
                return (new Date).getTime()
            },
            uaMatch: function(a) {
                a = a.toLowerCase();
                var b = r.exec(a) || s.exec(a) || t.exec(a) || a.indexOf("compatible") < 0 && u.exec(a) || [];
                return {
                    browser: b[1] || "",
                    version: b[2] || "0"
                }
            },
            sub: function() {
                function a(b, c) {
                    return new a.fn.init(b, c)
                }
                e.extend(!0, a, this),
                a.superclass = this,
                a.fn = a.prototype = this(),
                a.fn.constructor = a,
                a.sub = this.sub,
                a.fn.init = function(d, f) {
                    f && f instanceof e && !(f instanceof a) && (f = a(f));
                    return e.fn.init.call(this, d, f, b)
                },
                a.fn.init.prototype = a.fn;
                var b = a(c);
                return a
            },
            browser: {}
        }),
        e.each("Boolean Number String Function Array Date RegExp Object".split(" "),
        function(a, b) {
            I["[object " + b + "]"] = b.toLowerCase()
        }),
        z = e.uaMatch(y),
        z.browser && (e.browser[z.browser] = !0, e.browser.version = z.version),
        e.browser.webkit && (e.browser.safari = !0),
        j.test("聽") && (k = /^[\s\xA0]+/, l = /[\s\xA0]+$/),
        h = e(c),
        c.addEventListener ? B = function() {
            c.removeEventListener("DOMContentLoaded", B, !1),
            e.ready()
        }: c.attachEvent && (B = function() {
            c.readyState === "complete" && (c.detachEvent("onreadystatechange", B), e.ready())
        });
        return e
    } (),
    g = {};
    f.Callbacks = function(a) {
        a = a ? g[a] || h(a) : {};
        var c = [],
        d = [],
        e,
        i,
        j,
        k,
        l,
        m,
        n = function(b) {
            var d, e, g, h, i;
            for (d = 0, e = b.length; d < e; d++) g = b[d],
            h = f.type(g),
            h === "array" ? n(g) : h === "function" && (!a.unique || !p.has(g)) && c.push(g)
        },
        o = function(b, f) {
            f = f || [],
            e = !a.memory || [b, f],
            i = !0,
            j = !0,
            m = k || 0,
            k = 0,
            l = c.length;
            for (; c && m < l; m++) if (c[m].apply(b, f) === !1 && a.stopOnFalse) {
                e = !0;
                break
            }
            j = !1,
            c && (a.once ? e === !0 ? p.disable() : c = [] : d && d.length && (e = d.shift(), p.fireWith(e[0], e[1])))
        },
        p = {
            add: function() {
                if (c) {
                    var a = c.length;
                    n(arguments),
                    j ? l = c.length: e && e !== !0 && (k = a, o(e[0], e[1]))
                }
                return this
            },
            remove: function() {
                if (c) {
                    var b = arguments,
                    d = 0,
                    e = b.length;
                    for (; d < e; d++) for (var f = 0; f < c.length; f++) if (b[d] === c[f]) {
                        j && f <= l && (l--, f <= m && m--),
                        c.splice(f--, 1);
                        if (a.unique) break
                    }
                }
                return this
            },
            has: function(a) {
                if (c) {
                    var b = 0,
                    d = c.length;
                    for (; b < d; b++) if (a === c[b]) return ! 0
                }
                return ! 1
            },
            empty: function() {
                c = [];
                return this
            },
            disable: function() {
                c = d = e = b;
                return this
            },
            disabled: function() {
                return ! c
            },
            lock: function() {
                d = b,
                (!e || e === !0) && p.disable();
                return this
            },
            locked: function() {
                return ! d
            },
            fireWith: function(b, c) {
                d && (j ? a.once || d.push([b, c]) : (!a.once || !e) && o(b, c));
                return this
            },
            fire: function() {
                p.fireWith(this, arguments);
                return this
            },
            fired: function() {
                return !! i
            }
        };
        return p
    };
    var i = [].slice;
    f.extend({
        Deferred: function(a) {
            var b = f.Callbacks("once memory"),
            c = f.Callbacks("once memory"),
            d = f.Callbacks("memory"),
            e = "pending",
            g = {
                resolve: b,
                reject: c,
                notify: d
            },
            h = {
                done: b.add,
                fail: c.add,
                progress: d.add,
                state: function() {
                    return e
                },
                isResolved: b.fired,
                isRejected: c.fired,
                then: function(a, b, c) {
                    i.done(a).fail(b).progress(c);
                    return this
                },
                always: function() {
                    i.done.apply(i, arguments).fail.apply(i, arguments);
                    return this
                },
                pipe: function(a, b, c) {
                    return f.Deferred(function(d) {
                        f.each({
                            done: [a, "resolve"],
                            fail: [b, "reject"],
                            progress: [c, "notify"]
                        },
                        function(a, b) {
                            var c = b[0],
                            e = b[1],
                            g;
                            f.isFunction(c) ? i[a](function() {
                                g = c.apply(this, arguments),
                                g && f.isFunction(g.promise) ? g.promise().then(d.resolve, d.reject, d.notify) : d[e + "With"](this === i ? d: this, [g])
                            }) : i[a](d[e])
                        })
                    }).promise()
                },
                promise: function(a) {
                    if (a == null) a = h;
                    else for (var b in h) a[b] = h[b];
                    return a
                }
            },
            i = h.promise({}),
            j;
            for (j in g) i[j] = g[j].fire,
            i[j + "With"] = g[j].fireWith;
            i.done(function() {
                e = "resolved"
            },
            c.disable, d.lock).fail(function() {
                e = "rejected"
            },
            b.disable, d.lock),
            a && a.call(i, i);
            return i
        },
        when: function(a) {
            function m(a) {
                return function(b) {
                    e[a] = arguments.length > 1 ? i.call(arguments, 0) : b,
                    j.notifyWith(k, e)
                }
            }
            function l(a) {
                return function(c) {
                    b[a] = arguments.length > 1 ? i.call(arguments, 0) : c,
                    --g || j.resolveWith(j, b)
                }
            }
            var b = i.call(arguments, 0),
            c = 0,
            d = b.length,
            e = Array(d),
            g = d,
            h = d,
            j = d <= 1 && a && f.isFunction(a.promise) ? a: f.Deferred(),
            k = j.promise();
            if (d > 1) {
                for (; c < d; c++) b[c] && b[c].promise && f.isFunction(b[c].promise) ? b[c].promise().then(l(c), j.reject, m(c)) : --g;
                g || j.resolveWith(j, b)
            } else j !== a && j.resolveWith(j, d ? [a] : []);
            return k
        }
    }),
    f.support = function() {
        var b, d, e, g, h, i, j, k, l, m, n, o, p = c.createElement("div"),
        q = c.documentElement;
        p.setAttribute("className", "t"),
        p.innerHTML = "   <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>",
        d = p.getElementsByTagName("*"),
        e = p.getElementsByTagName("a")[0];
        if (!d || !d.length || !e) return {};
        g = c.createElement("select"),
        h = g.appendChild(c.createElement("option")),
        i = p.getElementsByTagName("input")[0],
        b = {
            leadingWhitespace: p.firstChild.nodeType === 3,
            tbody: !p.getElementsByTagName("tbody").length,
            htmlSerialize: !!p.getElementsByTagName("link").length,
            style: /top/.test(e.getAttribute("style")),
            hrefNormalized: e.getAttribute("href") === "/a",
            opacity: /^0.55/.test(e.style.opacity),
            cssFloat: !!e.style.cssFloat,
            checkOn: i.value === "on",
            optSelected: h.selected,
            getSetAttribute: p.className !== "t",
            enctype: !!c.createElement("form").enctype,
            html5Clone: c.createElement("nav").cloneNode(!0).outerHTML !== "<:nav></:nav>",
            submitBubbles: !0,
            changeBubbles: !0,
            focusinBubbles: !1,
            deleteExpando: !0,
            noCloneEvent: !0,
            inlineBlockNeedsLayout: !1,
            shrinkWrapBlocks: !1,
            reliableMarginRight: !0,
            pixelMargin: !0
        },
        f.boxModel = b.boxModel = c.compatMode === "CSS1Compat",
        i.checked = !0,
        b.noCloneChecked = i.cloneNode(!0).checked,
        g.disabled = !0,
        b.optDisabled = !h.disabled;
        try {
            delete p.test
        } catch(r) {
            b.deleteExpando = !1
        } ! p.addEventListener && p.attachEvent && p.fireEvent && (p.attachEvent("onclick",
        function() {
            b.noCloneEvent = !1
        }), p.cloneNode(!0).fireEvent("onclick")),
        i = c.createElement("input"),
        i.value = "t",
        i.setAttribute("type", "radio"),
        b.radioValue = i.value === "t",
        i.setAttribute("checked", "checked"),
        i.setAttribute("name", "t"),
        p.appendChild(i),
        j = c.createDocumentFragment(),
        j.appendChild(p.lastChild),
        b.checkClone = j.cloneNode(!0).cloneNode(!0).lastChild.checked,
        b.appendChecked = i.checked,
        j.removeChild(i),
        j.appendChild(p);
        if (p.attachEvent) for (n in {
            submit: 1,
            change: 1,
            focusin: 1
        }) m = "on" + n,
        o = m in p,
        o || (p.setAttribute(m, "return;"), o = typeof p[m] == "function"),
        b[n + "Bubbles"] = o;
        j.removeChild(p),
        j = g = h = p = i = null,
        f(function() {
            var d, e, g, h, i, j, l, m, n, q, r, s, t, u = c.getElementsByTagName("body")[0]; ! u || (m = 1, t = "padding:0;margin:0;border:", r = "position:absolute;top:0;left:0;width:1px;height:1px;", s = t + "0;visibility:hidden;", n = "style='" + r + t + "5px solid #000;", q = "<div " + n + "display:block;'><div style='" + t + "0;display:block;overflow:hidden;'></div></div>" + "<table " + n + "' cellpadding='0' cellspacing='0'>" + "<tr><td></td></tr></table>", d = c.createElement("div"), d.style.cssText = s + "width:0;height:0;position:static;top:0;margin-top:" + m + "px", u.insertBefore(d, u.firstChild), p = c.createElement("div"), d.appendChild(p), p.innerHTML = "<table><tr><td style='" + t + "0;display:none'></td><td>t</td></tr></table>", k = p.getElementsByTagName("td"), o = k[0].offsetHeight === 0, k[0].style.display = "", k[1].style.display = "none", b.reliableHiddenOffsets = o && k[0].offsetHeight === 0, a.getComputedStyle && (p.innerHTML = "", l = c.createElement("div"), l.style.width = "0", l.style.marginRight = "0", p.style.width = "2px", p.appendChild(l), b.reliableMarginRight = (parseInt((a.getComputedStyle(l, null) || {
                marginRight: 0
            }).marginRight, 10) || 0) === 0), typeof p.style.zoom != "undefined" && (p.innerHTML = "", p.style.width = p.style.padding = "1px", p.style.border = 0, p.style.overflow = "hidden", p.style.display = "inline", p.style.zoom = 1, b.inlineBlockNeedsLayout = p.offsetWidth === 3, p.style.display = "block", p.style.overflow = "visible", p.innerHTML = "<div style='width:5px;'></div>", b.shrinkWrapBlocks = p.offsetWidth !== 3), p.style.cssText = r + s, p.innerHTML = q, e = p.firstChild, g = e.firstChild, i = e.nextSibling.firstChild.firstChild, j = {
                doesNotAddBorder: g.offsetTop !== 5,
                doesAddBorderForTableAndCells: i.offsetTop === 5
            },
            g.style.position = "fixed", g.style.top = "20px", j.fixedPosition = g.offsetTop === 20 || g.offsetTop === 15, g.style.position = g.style.top = "", e.style.overflow = "hidden", e.style.position = "relative", j.subtractsBorderForOverflowNotVisible = g.offsetTop === -5, j.doesNotIncludeMarginInBodyOffset = u.offsetTop !== m, a.getComputedStyle && (p.style.marginTop = "1%", b.pixelMargin = (a.getComputedStyle(p, null) || {
                marginTop: 0
            }).marginTop !== "1%"), typeof d.style.zoom != "undefined" && (d.style.zoom = 1), u.removeChild(d), l = p = d = null, f.extend(b, j))
        });
        return b
    } ();
    var j = /^(?:\{.*\}|\[.*\])$/,
    k = /([A-Z])/g;
    f.extend({
        cache: {},
        uuid: 0,
        expando: "jQuery" + (f.fn.jquery + Math.random()).replace(/\D/g, ""),
        noData: {
            embed: !0,
            object: "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
            applet: !0
        },
        hasData: function(a) {
            a = a.nodeType ? f.cache[a[f.expando]] : a[f.expando];
            return !! a && !m(a)
        },
        data: function(a, c, d, e) {
            if ( !! f.acceptData(a)) {
                var g, h, i, j = f.expando,
                k = typeof c == "string",
                l = a.nodeType,
                m = l ? f.cache: a,
                n = l ? a[j] : a[j] && j,
                o = c === "events";
                if ((!n || !m[n] || !o && !e && !m[n].data) && k && d === b) return;
                n || (l ? a[j] = n = ++f.uuid: n = j),
                m[n] || (m[n] = {},
                l || (m[n].toJSON = f.noop));
                if (typeof c == "object" || typeof c == "function") e ? m[n] = f.extend(m[n], c) : m[n].data = f.extend(m[n].data, c);
                g = h = m[n],
                e || (h.data || (h.data = {}), h = h.data),
                d !== b && (h[f.camelCase(c)] = d);
                if (o && !h[c]) return g.events;
                k ? (i = h[c], i == null && (i = h[f.camelCase(c)])) : i = h;
                return i
            }
        },
        removeData: function(a, b, c) {
            if ( !! f.acceptData(a)) {
                var d, e, g, h = f.expando,
                i = a.nodeType,
                j = i ? f.cache: a,
                k = i ? a[h] : h;
                if (!j[k]) return;
                if (b) {
                    d = c ? j[k] : j[k].data;
                    if (d) {
                        f.isArray(b) || (b in d ? b = [b] : (b = f.camelCase(b), b in d ? b = [b] : b = b.split(" ")));
                        for (e = 0, g = b.length; e < g; e++) delete d[b[e]];
                        if (! (c ? m: f.isEmptyObject)(d)) return
                    }
                }
                if (!c) {
                    delete j[k].data;
                    if (!m(j[k])) return
                }
                f.support.deleteExpando || !j.setInterval ? delete j[k] : j[k] = null,
                i && (f.support.deleteExpando ? delete a[h] : a.removeAttribute ? a.removeAttribute(h) : a[h] = null)
            }
        },
        cA: function(a, b, c) {
            return f.data(a, b, c, !0)
        },
        acceptData: function(a) {
            if (a.nodeName) {
                var b = f.noData[a.nodeName.toLowerCase()];
                if (b) return b !== !0 && a.getAttribute("classid") === b
            }
            return ! 0
        }
    }),
    f.fn.extend({
        data: function(a, c) {
            var d, e, g, h, i, j = this[0],
            k = 0,
            m = null;
            if (a === b) {
                if (this.length) {
                    m = f.data(j);
                    if (j.nodeType === 1 && !f.cA(j, "parsedAttrs")) {
                        g = j.attributes;
                        for (i = g.length; k < i; k++) h = g[k].name,
                        h.indexOf("data-") === 0 && (h = f.camelCase(h.substring(5)), l(j, h, m[h]));
                        f.cA(j, "parsedAttrs", !0)
                    }
                }
                return m
            }
            if (typeof a == "object") return this.each(function() {
                f.data(this, a)
            });
            d = a.split(".", 2),
            d[1] = d[1] ? "." + d[1] : "",
            e = d[1] + "!";
            return f.access(this,
            function(c) {
                if (c === b) {
                    m = this.triggerHandler("getData" + e, [d[0]]),
                    m === b && j && (m = f.data(j, a), m = l(j, a, m));
                    return m === b && d[1] ? this.data(d[0]) : m
                }
                d[1] = c,
                this.each(function() {
                    var b = f(this);
                    b.triggerHandler("setData" + e, d),
                    f.data(this, a, c),
                    b.triggerHandler("changeData" + e, d)
                })
            },
            null, c, arguments.length > 1, null, !1)
        },
        removeData: function(a) {
            return this.each(function() {
                f.removeData(this, a)
            })
        }
    }),
    f.extend({
        pZ: function(a, b) {
            a && (b = (b || "fx") + "mark", f.cA(a, b, (f.cA(a, b) || 0) + 1))
        },
        nc: function(a, b, c) {
            a !== !0 && (c = b, b = a, a = !1);
            if (b) {
                c = c || "fx";
                var d = c + "mark",
                e = a ? 0 : (f.cA(b, d) || 1) - 1;
                e ? f.cA(b, d, e) : (f.removeData(b, d, !0), n(b, c, "mark"))
            }
        },
        queue: function(a, b, c) {
            var d;
            if (a) {
                b = (b || "fx") + "queue",
                d = f.cA(a, b),
                c && (!d || f.isArray(c) ? d = f.cA(a, b, f.makeArray(c)) : d.push(c));
                return d || []
            }
        },
        dequeue: function(a, b) {
            b = b || "fx";
            var c = f.queue(a, b),
            d = c.shift(),
            e = {};
            d === "inprogress" && (d = c.shift()),
            d && (b === "fx" && c.unshift("inprogress"), f.cA(a, b + ".run", e), d.call(a,
            function() {
                f.dequeue(a, b)
            },
            e)),
            c.length || (f.removeData(a, b + "queue " + b + ".run", !0), n(a, b, "queue"))
        }
    }),
    f.fn.extend({
        queue: function(a, c) {
            var d = 2;
            typeof a != "string" && (c = a, a = "fx", d--);
            if (arguments.length < d) return f.queue(this[0], a);
            return c === b ? this: this.each(function() {
                var b = f.queue(this, a, c);
                a === "fx" && b[0] !== "inprogress" && f.dequeue(this, a)
            })
        },
        dequeue: function(a) {
            return this.each(function() {
                f.dequeue(this, a)
            })
        },
        delay: function(a, b) {
            a = f.fx ? f.fx.speeds[a] || a: a,
            b = b || "fx";
            return this.queue(b,
            function(b, c) {
                var d = setTimeout(b, a);
                c.stop = function() {
                    clearTimeout(d)
                }
            })
        },
        clearQueue: function(a) {
            return this.queue(a || "fx", [])
        },
        promise: function(a, c) {
            function m() {--h || d.resolveWith(e, [e])
            }
            typeof a != "string" && (c = a, a = b),
            a = a || "fx";
            var d = f.Deferred(),
            e = this,
            g = e.length,
            h = 1,
            i = a + "defer",
            j = a + "queue",
            k = a + "mark",
            l;
            while (g--) if (l = f.data(e[g], i, b, !0) || (f.data(e[g], j, b, !0) || f.data(e[g], k, b, !0)) && f.data(e[g], i, f.Callbacks("once memory"), !0)) h++,
            l.add(m);
            m();
            return d.promise(c)
        }
    });
    var o = /[\n\t\r]/g,
    p = /\s+/,
    q = /\r/g,
    r = /^(?:button|input)$/i,
    s = /^(?:button|input|object|select|textarea)$/i,
    t = /^a(?:rea)?$/i,
    u = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,
    v = f.support.getSetAttribute,
    w, x, y;
    f.fn.extend({
        attr: function(a, b) {
            return f.access(this, f.attr, a, b, arguments.length > 1)
        },
        removeAttr: function(a) {
            return this.each(function() {
                f.removeAttr(this, a)
            })
        },
        prop: function(a, b) {
            return f.access(this, f.prop, a, b, arguments.length > 1)
        },
        removeProp: function(a) {
            a = f.propFix[a] || a;
            return this.each(function() {
                try {
                    this[a] = b,
                    delete this[a]
                } catch(c) {}
            })
        },
        addClass: function(a) {
            var b, c, d, e, g, h, i;
            if (f.isFunction(a)) return this.each(function(b) {
                f(this).addClass(a.call(this, b, this.className))
            });
            if (a && typeof a == "string") {
                b = a.split(p);
                for (c = 0, d = this.length; c < d; c++) {
                    e = this[c];
                    if (e.nodeType === 1) if (!e.className && b.length === 1) e.className = a;
                    else {
                        g = " " + e.className + " ";
                        for (h = 0, i = b.length; h < i; h++)~g.indexOf(" " + b[h] + " ") || (g += b[h] + " ");
                        e.className = f.trim(g)
                    }
                }
            }
            return this
        },
        removeClass: function(a) {
            var c, d, e, g, h, i, j;
            if (f.isFunction(a)) return this.each(function(b) {
                f(this).removeClass(a.call(this, b, this.className))
            });
            if (a && typeof a == "string" || a === b) {
                c = (a || "").split(p);
                for (d = 0, e = this.length; d < e; d++) {
                    g = this[d];
                    if (g.nodeType === 1 && g.className) if (a) {
                        h = (" " + g.className + " ").replace(o, " ");
                        for (i = 0, j = c.length; i < j; i++) h = h.replace(" " + c[i] + " ", " ");
                        g.className = f.trim(h)
                    } else g.className = ""
                }
            }
            return this
        },
        toggleClass: function(a, b) {
            var c = typeof a,
            d = typeof b == "boolean";
            if (f.isFunction(a)) return this.each(function(c) {
                f(this).toggleClass(a.call(this, c, this.className, b), b)
            });
            return this.each(function() {
                if (c === "string") {
                    var e, g = 0,
                    h = f(this),
                    i = b,
                    j = a.split(p);
                    while (e = j[g++]) i = d ? i: !h.hasClass(e),
                    h[i ? "addClass": "removeClass"](e)
                } else if (c === "undefined" || c === "boolean") this.className && f.cA(this, "__className__", this.className),
                this.className = this.className || a === !1 ? "": f.cA(this, "__className__") || ""
            })
        },
        hasClass: function(a) {
            var b = " " + a + " ",
            c = 0,
            d = this.length;
            for (; c < d; c++) if (this[c].nodeType === 1 && (" " + this[c].className + " ").replace(o, " ").indexOf(b) > -1) return ! 0;
            return ! 1
        },
        val: function(a) {
            var c, d, e, g = this[0]; {
                if ( !! arguments.length) {
                    e = f.isFunction(a);
                    return this.each(function(d) {
                        var g = f(this),
                        h;
                        if (this.nodeType === 1) {
                            e ? h = a.call(this, d, g.val()) : h = a,
                            h == null ? h = "": typeof h == "number" ? h += "": f.isArray(h) && (h = f.map(h,
                            function(a) {
                                return a == null ? "": a + ""
                            })),
                            c = f.valHooks[this.type] || f.valHooks[this.nodeName.toLowerCase()];
                            if (!c || !("set" in c) || c.set(this, h, "value") === b) this.value = h
                        }
                    })
                }
                if (g) {
                    c = f.valHooks[g.type] || f.valHooks[g.nodeName.toLowerCase()];
                    if (c && "get" in c && (d = c.get(g, "value")) !== b) return d;
                    d = g.value;
                    return typeof d == "string" ? d.replace(q, "") : d == null ? "": d
                }
            }
        }
    }),
    f.extend({
        valHooks: {
            option: {
                get: function(a) {
                    var b = a.attributes.value;
                    return ! b || b.specified ? a.value: a.text
                }
            },
            select: {
                get: function(a) {
                    var b, c, d, e, g = a.selectedIndex,
                    h = [],
                    i = a.options,
                    j = a.type === "select-one";
                    if (g < 0) return null;
                    c = j ? g: 0,
                    d = j ? g + 1 : i.length;
                    for (; c < d; c++) {
                        e = i[c];
                        if (e.selected && (f.support.optDisabled ? !e.disabled: e.getAttribute("disabled") === null) && (!e.parentNode.disabled || !f.nodeName(e.parentNode, "optgroup"))) {
                            b = f(e).val();
                            if (j) return b;
                            h.push(b)
                        }
                    }
                    if (j && !h.length && i.length) return f(i[g]).val();
                    return h
                },
                set: function(a, b) {
                    var c = f.makeArray(b);
                    f(a).find("option").each(function() {
                        this.selected = f.inArray(f(this).val(), c) >= 0
                    }),
                    c.length || (a.selectedIndex = -1);
                    return c
                }
            }
        },
        attrFn: {
            val: !0,
            css: !0,
            html: !0,
            text: !0,
            data: !0,
            width: !0,
            height: !0,
            offset: !0
        },
        attr: function(a, c, d, e) {
            var g, h, i, j = a.nodeType;
            if ( !! a && j !== 3 && j !== 8 && j !== 2) {
                if (e && c in f.attrFn) return f(a)[c](d);
                if (typeof a.getAttribute == "undefined") return f.prop(a, c, d);
                i = j !== 1 || !f.isXMLDoc(a),
                i && (c = c.toLowerCase(), h = f.attrHooks[c] || (u.test(c) ? x: w));
                if (d !== b) {
                    if (d === null) {
                        f.removeAttr(a, c);
                        return
                    }
                    if (h && "set" in h && i && (g = h.set(a, d, c)) !== b) return g;
                    a.setAttribute(c, "" + d);
                    return d
                }
                if (h && "get" in h && i && (g = h.get(a, c)) !== null) return g;
                g = a.getAttribute(c);
                return g === null ? b: g
            }
        },
        removeAttr: function(a, b) {
            var c, d, e, g, h, i = 0;
            if (b && a.nodeType === 1) {
                d = b.toLowerCase().split(p),
                g = d.length;
                for (; i < g; i++) e = d[i],
                e && (c = f.propFix[e] || e, h = u.test(e), h || f.attr(a, e, ""), a.removeAttribute(v ? e: c), h && c in a && (a[c] = !1))
            }
        },
        attrHooks: {
            type: {
                set: function(a, b) {
                    if (r.test(a.nodeName) && a.parentNode) f.error("type property can't be changed");
                    else if (!f.support.radioValue && b === "radio" && f.nodeName(a, "input")) {
                        var c = a.value;
                        a.setAttribute("type", b),
                        c && (a.value = c);
                        return b
                    }
                }
            },
            value: {
                get: function(a, b) {
                    if (w && f.nodeName(a, "button")) return w.get(a, b);
                    return b in a ? a.value: null
                },
                set: function(a, b, c) {
                    if (w && f.nodeName(a, "button")) return w.set(a, b, c);
                    a.value = b
                }
            }
        },
        propFix: {
            tabindex: "tabIndex",
            readonly: "readOnly",
            "for": "htmlFor",
            "class": "className",
            maxlength: "maxLength",
            cellspacing: "cellSpacing",
            cellpadding: "cellPadding",
            rowspan: "rowSpan",
            colspan: "colSpan",
            usemap: "useMap",
            frameborder: "frameBorder",
            contenteditable: "contentEditable"
        },
        prop: function(a, c, d) {
            var e, g, h, i = a.nodeType;
            if ( !! a && i !== 3 && i !== 8 && i !== 2) {
                h = i !== 1 || !f.isXMLDoc(a),
                h && (c = f.propFix[c] || c, g = f.propHooks[c]);
                return d !== b ? g && "set" in g && (e = g.set(a, d, c)) !== b ? e: a[c] = d: g && "get" in g && (e = g.get(a, c)) !== null ? e: a[c]
            }
        },
        propHooks: {
            tabIndex: {
                get: function(a) {
                    var c = a.getAttributeNode("tabindex");
                    return c && c.specified ? parseInt(c.value, 10) : s.test(a.nodeName) || t.test(a.nodeName) && a.href ? 0 : b
                }
            }
        }
    }),
    f.attrHooks.tabindex = f.propHooks.tabIndex,
    x = {
        get: function(a, c) {
            var d, e = f.prop(a, c);
            return e === !0 || typeof e != "boolean" && (d = a.getAttributeNode(c)) && d.nodeValue !== !1 ? c.toLowerCase() : b
        },
        set: function(a, b, c) {
            var d;
            b === !1 ? f.removeAttr(a, c) : (d = f.propFix[c] || c, d in a && (a[d] = !0), a.setAttribute(c, c.toLowerCase()));
            return c
        }
    },
    v || (y = {
        name: !0,
        id: !0,
        coords: !0
    },
    w = f.valHooks.button = {
        get: function(a, c) {
            var d;
            d = a.getAttributeNode(c);
            return d && (y[c] ? d.nodeValue !== "": d.specified) ? d.nodeValue: b
        },
        set: function(a, b, d) {
            var e = a.getAttributeNode(d);
            e || (e = c.createAttribute(d), a.setAttributeNode(e));
            return e.nodeValue = b + ""
        }
    },
    f.attrHooks.tabindex.set = w.set, f.each(["width", "height"],
    function(a, b) {
        f.attrHooks[b] = f.extend(f.attrHooks[b], {
            set: function(a, c) {
                if (c === "") {
                    a.setAttribute(b, "auto");
                    return c
                }
            }
        })
    }), f.attrHooks.contenteditable = {
        get: w.get,
        set: function(a, b, c) {
            b === "" && (b = "false"),
            w.set(a, b, c)
        }
    }),
    f.support.hrefNormalized || f.each(["href", "src", "width", "height"],
    function(a, c) {
        f.attrHooks[c] = f.extend(f.attrHooks[c], {
            get: function(a) {
                var d = a.getAttribute(c, 2);
                return d === null ? b: d
            }
        })
    }),
    f.support.style || (f.attrHooks.style = {
        get: function(a) {
            return a.style.cssText.toLowerCase() || b
        },
        set: function(a, b) {
            return a.style.cssText = "" + b
        }
    }),
    f.support.optSelected || (f.propHooks.selected = f.extend(f.propHooks.selected, {
        get: function(a) {
            var b = a.parentNode;
            b && (b.selectedIndex, b.parentNode && b.parentNode.selectedIndex);
            return null
        }
    })),
    f.support.enctype || (f.propFix.enctype = "encoding"),
    f.support.checkOn || f.each(["radio", "checkbox"],
    function() {
        f.valHooks[this] = {
            get: function(a) {
                return a.getAttribute("value") === null ? "on": a.value
            }
        }
    }),
    f.each(["radio", "checkbox"],
    function() {
        f.valHooks[this] = f.extend(f.valHooks[this], {
            set: function(a, b) {
                if (f.isArray(b)) return a.checked = f.inArray(f(a).val(), b) >= 0
            }
        })
    });
    var z = /^(?:textarea|input|select)$/i,
    A = /^([^\.]*)?(?:\.(.+))?$/,
    B = /(?:^|\s)hover(\.\S+)?\b/,
    C = /^key/,
    D = /^(?:mouse|contextmenu)|click/,
    E = /^(?:focusinfocus|focusoutblur)$/,
    F = /^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,
    G = function(a) {
        var b = F.exec(a);
        b && (b[1] = (b[1] || "").toLowerCase(), b[3] = b[3] && new RegExp("(?:^|\\s)" + b[3] + "(?:\\s|$)"));
        return b
    },
    H = function(a, b) {
        var c = a.attributes || {};
        return (!b[1] || a.nodeName.toLowerCase() === b[1]) && (!b[2] || (c.id || {}).value === b[2]) && (!b[3] || b[3].test((c["class"] || {}).value))
    },
    I = function(a) {
        return f.event.special.hover ? a: a.replace(B, "mouseenter$1 mouseleave$1")
    };
    f.event = {
        add: function(a, c, d, e, g) {
            var h, i, j, k, l, m, n, o, p, q, r, s;
            if (! (a.nodeType === 3 || a.nodeType === 8 || !c || !d || !(h = f.cA(a)))) {
                d.handler && (p = d, d = p.handler, g = p.selector),
                d.guid || (d.guid = f.guid++),
                j = h.events,
                j || (h.events = j = {}),
                i = h.handle,
                i || (h.handle = i = function(a) {
                    return typeof f != "undefined" && (!a || f.event.triggered !== a.type) ? f.event.dispatch.apply(i.elem, arguments) : b
                },
                i.elem = a),
                c = f.trim(I(c)).split(" ");
                for (k = 0; k < c.length; k++) {
                    l = A.exec(c[k]) || [],
                    m = l[1],
                    n = (l[2] || "").split(".").sort(),
                    s = f.event.special[m] || {},
                    m = (g ? s.delegateType: s.bindType) || m,
                    s = f.event.special[m] || {},
                    o = f.extend({
                        type: m,
                        origType: l[1],
                        data: e,
                        handler: d,
                        guid: d.guid,
                        selector: g,
                        quick: g && G(g),
                        namespace: n.join(".")
                    },
                    p),
                    r = j[m];
                    if (!r) {
                        r = j[m] = [],
                        r.delegateCount = 0;
                        if (!s.setup || s.setup.call(a, e, n, i) === !1) a.addEventListener ? a.addEventListener(m, i, !1) : a.attachEvent && a.attachEvent("on" + m, i)
                    }
                    s.add && (s.add.call(a, o), o.handler.guid || (o.handler.guid = d.guid)),
                    g ? r.splice(r.delegateCount++, 0, o) : r.push(o),
                    f.event.global[m] = !0
                }
                a = null
            }
        },
        global: {},
        remove: function(a, b, c, d, e) {
            var g = f.hasData(a) && f.cA(a),
            h,
            i,
            j,
            k,
            l,
            m,
            n,
            o,
            p,
            q,
            r,
            s;
            if ( !! g && !!(o = g.events)) {
                b = f.trim(I(b || "")).split(" ");
                for (h = 0; h < b.length; h++) {
                    i = A.exec(b[h]) || [],
                    j = k = i[1],
                    l = i[2];
                    if (!j) {
                        for (j in o) f.event.remove(a, j + b[h], c, d, !0);
                        continue
                    }
                    p = f.event.special[j] || {},
                    j = (d ? p.delegateType: p.bindType) || j,
                    r = o[j] || [],
                    m = r.length,
                    l = l ? new RegExp("(^|\\.)" + l.split(".").sort().join("\\.(?:.*\\.)?") + "(\\.|$)") : null;
                    for (n = 0; n < r.length; n++) s = r[n],
                    (e || k === s.origType) && (!c || c.guid === s.guid) && (!l || l.test(s.namespace)) && (!d || d === s.selector || d === "**" && s.selector) && (r.splice(n--, 1), s.selector && r.delegateCount--, p.remove && p.remove.call(a, s));
                    r.length === 0 && m !== r.length && ((!p.teardown || p.teardown.call(a, l) === !1) && f.removeEvent(a, j, g.handle), delete o[j])
                }
                f.isEmptyObject(o) && (q = g.handle, q && (q.elem = null), f.removeData(a, ["events", "handle"], !0))
            }
        },
        customEvent: {
            getData: !0,
            setData: !0,
            changeData: !0
        },
        trigger: function(c, d, e, g) {
            if (!e || e.nodeType !== 3 && e.nodeType !== 8) {
                var h = c.type || c,
                i = [],
                j,
                k,
                l,
                m,
                n,
                o,
                p,
                q,
                r,
                s;
                if (E.test(h + f.event.triggered)) return;
                h.indexOf("!") >= 0 && (h = h.slice(0, -1), k = !0),
                h.indexOf(".") >= 0 && (i = h.split("."), h = i.shift(), i.sort());
                if ((!e || f.event.customEvent[h]) && !f.event.global[h]) return;
                c = typeof c == "object" ? c[f.expando] ? c: new f.Event(h, c) : new f.Event(h),
                c.type = h,
                c.isTrigger = !0,
                c.exclusive = k,
                c.namespace = i.join("."),
                c.namespace_re = c.namespace ? new RegExp("(^|\\.)" + i.join("\\.(?:.*\\.)?") + "(\\.|$)") : null,
                o = h.indexOf(":") < 0 ? "on" + h: "";
                if (!e) {
                    j = f.cache;
                    for (l in j) j[l].events && j[l].events[h] && f.event.trigger(c, d, j[l].handle.elem, !0);
                    return
                }
                c.result = b,
                c.target || (c.target = e),
                d = d != null ? f.makeArray(d) : [],
                d.unshift(c),
                p = f.event.special[h] || {};
                if (p.trigger && p.trigger.apply(e, d) === !1) return;
                r = [[e, p.bindType || h]];
                if (!g && !p.noBubble && !f.isWindow(e)) {
                    s = p.delegateType || h,
                    m = E.test(s + h) ? e: e.parentNode,
                    n = null;
                    for (; m; m = m.parentNode) r.push([m, s]),
                    n = m;
                    n && n === e.ownerDocument && r.push([n.defaultView || n.parentWindow || a, s])
                }
                for (l = 0; l < r.length && !c.isPropagationStopped(); l++) m = r[l][0],
                c.type = r[l][1],
                q = (f.cA(m, "events") || {})[c.type] && f.cA(m, "handle"),
                q && q.apply(m, d),
                q = o && m[o],
                q && f.acceptData(m) && q.apply(m, d) === !1 && c.preventDefault();
                c.type = h,
                !g && !c.isDefaultPrevented() && (!p.fd || p.fd.apply(e.ownerDocument, d) === !1) && (h !== "click" || !f.nodeName(e, "a")) && f.acceptData(e) && o && e[h] && (h !== "focus" && h !== "blur" || c.target.offsetWidth !== 0) && !f.isWindow(e) && (n = e[o], n && (e[o] = null), f.event.triggered = h, e[h](), f.event.triggered = b, n && (e[o] = n));
                return c.result
            }
        },
        dispatch: function(c) {
            c = f.event.fix(c || a.event);
            var d = (f.cA(this, "events") || {})[c.type] || [],
            e = d.delegateCount,
            g = [].slice.call(arguments, 0),
            h = !c.exclusive && !c.namespace,
            i = f.event.special[c.type] || {},
            j = [],
            k,
            l,
            m,
            n,
            o,
            p,
            q,
            r,
            s,
            t,
            u;
            g[0] = c,
            c.delegateTarget = this;
            if (!i.preDispatch || i.preDispatch.call(this, c) !== !1) {
                if (e && (!c.button || c.type !== "click")) {
                    n = f(this),
                    n.context = this.ownerDocument || this;
                    for (m = c.target; m != this; m = m.parentNode || this) if (m.disabled !== !0) {
                        p = {},
                        r = [],
                        n[0] = m;
                        for (k = 0; k < e; k++) s = d[k],
                        t = s.selector,
                        p[t] === b && (p[t] = s.quick ? H(m, s.quick) : n.is(t)),
                        p[t] && r.push(s);
                        r.length && j.push({
                            elem: m,
                            matches: r
                        })
                    }
                }
                d.length > e && j.push({
                    elem: this,
                    matches: d.slice(e)
                });
                for (k = 0; k < j.length && !c.isPropagationStopped(); k++) {
                    q = j[k],
                    c.currentTarget = q.elem;
                    for (l = 0; l < q.matches.length && !c.isImmediatePropagationStopped(); l++) {
                        s = q.matches[l];
                        if (h || !c.namespace && !s.namespace || c.namespace_re && c.namespace_re.test(s.namespace)) c.data = s.data,
                        c.handleObj = s,
                        o = ((f.event.special[s.origType] || {}).handle || s.handler).apply(q.elem, g),
                        o !== b && (c.result = o, o === !1 && (c.preventDefault(), c.stopPropagation()))
                    }
                }
                i.postDispatch && i.postDispatch.call(this, c);
                return c.result
            }
        },
        props: "attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
        fixHooks: {},
        keyHooks: {
            props: "char charCode key keyCode".split(" "),
            filter: function(a, b) {
                a.which == null && (a.which = b.charCode != null ? b.charCode: b.keyCode);
                return a
            }
        },
        mouseHooks: {
            props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),
            filter: function(a, d) {
                var e, f, g, h = d.button,
                i = d.fromElement;
                a.pageX == null && d.clientX != null && (e = a.target.ownerDocument || c, f = e.documentElement, g = e.body, a.pageX = d.clientX + (f && f.scrollLeft || g && g.scrollLeft || 0) - (f && f.clientLeft || g && g.clientLeft || 0), a.pageY = d.clientY + (f && f.scrollTop || g && g.scrollTop || 0) - (f && f.clientTop || g && g.clientTop || 0)),
                !a.relatedTarget && i && (a.relatedTarget = i === a.target ? d.toElement: i),
                !a.which && h !== b && (a.which = h & 1 ? 1 : h & 2 ? 3 : h & 4 ? 2 : 0);
                return a
            }
        },
        fix: function(a) {
            if (a[f.expando]) return a;
            var d, e, g = a,
            h = f.event.fixHooks[a.type] || {},
            i = h.props ? this.props.concat(h.props) : this.props;
            a = f.Event(g);
            for (d = i.length; d;) e = i[--d],
            a[e] = g[e];
            a.target || (a.target = g.srcElement || c),
            a.target.nodeType === 3 && (a.target = a.target.parentNode),
            a.metaKey === b && (a.metaKey = a.ctrlKey);
            return h.filter ? h.filter(a, g) : a
        },
        special: {
            ready: {
                setup: f.bindReady
            },
            load: {
                noBubble: !0
            },
            focus: {
                delegateType: "focusin"
            },
            blur: {
                delegateType: "focusout"
            },
            beforeunload: {
                setup: function(a, b, c) {
                    f.isWindow(this) && (this.onbeforeunload = c)
                },
                teardown: function(a, b) {
                    this.onbeforeunload === b && (this.onbeforeunload = null)
                }
            }
        },
        simulate: function(a, b, c, d) {
            var e = f.extend(new f.Event, c, {
                type: a,
                isSimulated: !0,
                originalEvent: {}
            });
            d ? f.event.trigger(e, null, b) : f.event.dispatch.call(b, e),
            e.isDefaultPrevented() && c.preventDefault()
        }
    },
    f.event.handle = f.event.dispatch,
    f.removeEvent = c.removeEventListener ?
    function(a, b, c) {
        a.removeEventListener && a.removeEventListener(b, c, !1)
    }: function(a, b, c) {
        a.detachEvent && a.detachEvent("on" + b, c)
    },
    f.Event = function(a, b) {
        if (! (this instanceof f.Event)) return new f.Event(a, b);
        a && a.type ? (this.originalEvent = a, this.type = a.type, this.isDefaultPrevented = a.defaultPrevented || a.returnValue === !1 || a.getPreventDefault && a.getPreventDefault() ? K: J) : this.type = a,
        b && f.extend(this, b),
        this.timeStamp = a && a.timeStamp || f.now(),
        this[f.expando] = !0
    },
    f.Event.prototype = {
        preventDefault: function() {
            this.isDefaultPrevented = K;
            var a = this.originalEvent; ! a || (a.preventDefault ? a.preventDefault() : a.returnValue = !1)
        },
        stopPropagation: function() {
            this.isPropagationStopped = K;
            var a = this.originalEvent; ! a || (a.stopPropagation && a.stopPropagation(), a.cancelBubble = !0)
        },
        stopImmediatePropagation: function() {
            this.isImmediatePropagationStopped = K,
            this.stopPropagation()
        },
        isDefaultPrevented: J,
        isPropagationStopped: J,
        isImmediatePropagationStopped: J
    },
    f.each({
        mouseenter: "mouseover",
        mouseleave: "mouseout"
    },
    function(a, b) {
        f.event.special[a] = {
            delegateType: b,
            bindType: b,
            handle: function(a) {
                var c = this,
                d = a.relatedTarget,
                e = a.handleObj,
                g = e.selector,
                h;
                if (!d || d !== c && !f.contains(c, d)) a.type = e.origType,
                h = e.handler.apply(this, arguments),
                a.type = b;
                return h
            }
        }
    }),
    f.support.submitBubbles || (f.event.special.submit = {
        setup: function() {
            if (f.nodeName(this, "form")) return ! 1;
            f.event.add(this, "click._submit keypress._submit",
            function(a) {
                var c = a.target,
                d = f.nodeName(c, "input") || f.nodeName(c, "button") ? c.form: b;
                d && !d.pY && (f.event.add(d, "submit._submit",
                function(a) {
                    a.oF = !0
                }), d.pY = !0)
            })
        },
        postDispatch: function(a) {
            a.oF && (delete a.oF, this.parentNode && !a.isTrigger && f.event.simulate("submit", this.parentNode, a, !0))
        },
        teardown: function() {
            if (f.nodeName(this, "form")) return ! 1;
            f.event.remove(this, "._submit")
        }
    }),
    f.support.changeBubbles || (f.event.special.change = {
        setup: function() {
            if (z.test(this.nodeName)) {
                if (this.type === "checkbox" || this.type === "radio") f.event.add(this, "propertychange._change",
                function(a) {
                    a.originalEvent.propertyName === "checked" && (this.ng = !0)
                }),
                f.event.add(this, "click._change",
                function(a) {
                    this.ng && !a.isTrigger && (this.ng = !1, f.event.simulate("change", this, a, !0))
                });
                return ! 1
            }
            f.event.add(this, "beforeactivate._change",
            function(a) {
                var b = a.target;
                z.test(b.nodeName) && !b.pX && (f.event.add(b, "change._change",
                function(a) {
                    this.parentNode && !a.isSimulated && !a.isTrigger && f.event.simulate("change", this.parentNode, a, !0)
                }), b.pX = !0)
            })
        },
        handle: function(a) {
            var b = a.target;
            if (this !== b || a.isSimulated || a.isTrigger || b.type !== "radio" && b.type !== "checkbox") return a.handleObj.handler.apply(this, arguments)
        },
        teardown: function() {
            f.event.remove(this, "._change");
            return z.test(this.nodeName)
        }
    }),
    f.support.focusinBubbles || f.each({
        focus: "focusin",
        blur: "focusout"
    },
    function(a, b) {
        var d = 0,
        e = function(a) {
            f.event.simulate(b, a.target, f.event.fix(a), !0)
        };
        f.event.special[b] = {
            setup: function() {
                d++===0 && c.addEventListener(a, e, !0)
            },
            teardown: function() {--d === 0 && c.removeEventListener(a, e, !0)
            }
        }
    }),
    f.fn.extend({
        on: function(a, c, d, e, g) {
            var h, i;
            if (typeof a == "object") {
                typeof c != "string" && (d = d || c, c = b);
                for (i in a) this.on(i, c, d, a[i], g);
                return this
            }
            d == null && e == null ? (e = c, d = c = b) : e == null && (typeof c == "string" ? (e = d, d = b) : (e = d, d = c, c = b));
            if (e === !1) e = J;
            else if (!e) return this;
            g === 1 && (h = e, e = function(a) {
                f().off(a);
                return h.apply(this, arguments)
            },
            e.guid = h.guid || (h.guid = f.guid++));
            return this.each(function() {
                f.event.add(this, a, e, d, c)
            })
        },
        one: function(a, b, c, d) {
            return this.on(a, b, c, d, 1)
        },
        off: function(a, c, d) {
            if (a && a.preventDefault && a.handleObj) {
                var e = a.handleObj;
                f(a.delegateTarget).off(e.namespace ? e.origType + "." + e.namespace: e.origType, e.selector, e.handler);
                return this
            }
            if (typeof a == "object") {
                for (var g in a) this.off(g, c, a[g]);
                return this
            }
            if (c === !1 || typeof c == "function") d = c,
            c = b;
            d === !1 && (d = J);
            return this.each(function() {
                f.event.remove(this, a, d, c)
            })
        },
        bind: function(a, b, c) {
            return this.on(a, null, b, c)
        },
        unbind: function(a, b) {
            return this.off(a, null, b)
        },
        live: function(a, b, c) {
            f(this.context).on(a, this.selector, b, c);
            return this
        },
        die: function(a, b) {
            f(this.context).off(a, this.selector || "**", b);
            return this
        },
        delegate: function(a, b, c, d) {
            return this.on(b, a, c, d)
        },
        undelegate: function(a, b, c) {
            return arguments.length == 1 ? this.off(a, "**") : this.off(b, a, c)
        },
        trigger: function(a, b) {
            return this.each(function() {
                f.event.trigger(a, b, this)
            })
        },
        triggerHandler: function(a, b) {
            if (this[0]) return f.event.trigger(a, b, this[0], !0)
        },
        toggle: function(a) {
            var b = arguments,
            c = a.guid || f.guid++,
            d = 0,
            e = function(c) {
                var e = (f.cA(this, "lastToggle" + a.guid) || 0) % d;
                f.cA(this, "lastToggle" + a.guid, e + 1),
                c.preventDefault();
                return b[e].apply(this, arguments) || !1
            };
            e.guid = c;
            while (d < b.length) b[d++].guid = c;
            return this.click(e)
        },
        hover: function(a, b) {
            return this.mouseenter(a).mouseleave(b || a)
        }
    }),
    f.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),
    function(a, b) {
        f.fn[b] = function(a, c) {
            c == null && (c = a, a = null);
            return arguments.length > 0 ? this.on(b, null, a, c) : this.trigger(b)
        },
        f.attrFn && (f.attrFn[b] = !0),
        C.test(b) && (f.event.fixHooks[b] = f.event.keyHooks),
        D.test(b) && (f.event.fixHooks[b] = f.event.mouseHooks)
    }),
    function() {
        function x(a, b, c, e, f, g) {
            for (var h = 0,
            i = e.length; h < i; h++) {
                var j = e[h];
                if (j) {
                    var k = !1;
                    j = j[a];
                    while (j) {
                        if (j[d] === c) {
                            k = e[j.sizset];
                            break
                        }
                        if (j.nodeType === 1) {
                            g || (j[d] = c, j.sizset = h);
                            if (typeof b != "string") {
                                if (j === b) {
                                    k = !0;
                                    break
                                }
                            } else if (m.filter(b, [j]).length > 0) {
                                k = j;
                                break
                            }
                        }
                        j = j[a]
                    }
                    e[h] = k
                }
            }
        }
        function w(a, b, c, e, f, g) {
            for (var h = 0,
            i = e.length; h < i; h++) {
                var j = e[h];
                if (j) {
                    var k = !1;
                    j = j[a];
                    while (j) {
                        if (j[d] === c) {
                            k = e[j.sizset];
                            break
                        }
                        j.nodeType === 1 && !g && (j[d] = c, j.sizset = h);
                        if (j.nodeName.toLowerCase() === b) {
                            k = j;
                            break
                        }
                        j = j[a]
                    }
                    e[h] = k
                }
            }
        }
        var a = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,
        d = "sizcache" + (Math.random() + "").replace(".", ""),
        e = 0,
        g = Object.prototype.toString,
        h = !1,
        i = !0,
        j = /\\/g,
        k = /\r\n/g,
        l = /\W/; [0, 0].sort(function() {
            i = !1;
            return 0
        });
        var m = function(b, d, e, f) {
            e = e || [],
            d = d || c;
            var h = d;
            if (d.nodeType !== 1 && d.nodeType !== 9) return [];
            if (!b || typeof b != "string") return e;
            var i, j, k, l, n, q, r, t, u = !0,
            v = m.isXML(d),
            w = [],
            x = b;
            do {
                a.exec(""), i = a.exec(x);
                if (i) {
                    x = i[3],
                    w.push(i[1]);
                    if (i[2]) {
                        l = i[3];
                        break
                    }
                }
            } while ( i );
            if (w.length > 1 && p.exec(b)) if (w.length === 2 && o.relative[w[0]]) j = y(w[0] + w[1], d, f);
            else {
                j = o.relative[w[0]] ? [d] : m(w.shift(), d);
                while (w.length) b = w.shift(),
                o.relative[b] && (b += w.shift()),
                j = y(b, j, f)
            } else { ! f && w.length > 1 && d.nodeType === 9 && !v && o.match.ID.test(w[0]) && !o.match.ID.test(w[w.length - 1]) && (n = m.find(w.shift(), d, v), d = n.expr ? m.filter(n.expr, n.set)[0] : n.set[0]);
                if (d) {
                    n = f ? {
                        expr: w.pop(),
                        set: s(f)
                    }: m.find(w.pop(), w.length === 1 && (w[0] === "~" || w[0] === "+") && d.parentNode ? d.parentNode: d, v),
                    j = n.expr ? m.filter(n.expr, n.set) : n.set,
                    w.length > 0 ? k = s(j) : u = !1;
                    while (w.length) q = w.pop(),
                    r = q,
                    o.relative[q] ? r = w.pop() : q = "",
                    r == null && (r = d),
                    o.relative[q](k, r, v)
                } else k = w = []
            }
            k || (k = j),
            k || m.error(q || b);
            if (g.call(k) === "[object Array]") if (!u) e.push.apply(e, k);
            else if (d && d.nodeType === 1) for (t = 0; k[t] != null; t++) k[t] && (k[t] === !0 || k[t].nodeType === 1 && m.contains(d, k[t])) && e.push(j[t]);
            else for (t = 0; k[t] != null; t++) k[t] && k[t].nodeType === 1 && e.push(j[t]);
            else s(k, e);
            l && (m(l, h, e, f), m.uniqueSort(e));
            return e
        };
        m.uniqueSort = function(a) {
            if (u) {
                h = i,
                a.sort(u);
                if (h) for (var b = 1; b < a.length; b++) a[b] === a[b - 1] && a.splice(b--, 1)
            }
            return a
        },
        m.matches = function(a, b) {
            return m(a, null, null, b)
        },
        m.matchesSelector = function(a, b) {
            return m(b, null, null, [a]).length > 0
        },
        m.find = function(a, b, c) {
            var d, e, f, g, h, i;
            if (!a) return [];
            for (e = 0, f = o.order.length; e < f; e++) {
                h = o.order[e];
                if (g = o.leftMatch[h].exec(a)) {
                    i = g[1],
                    g.splice(1, 1);
                    if (i.substr(i.length - 1) !== "\\") {
                        g[1] = (g[1] || "").replace(j, ""),
                        d = o.find[h](g, b, c);
                        if (d != null) {
                            a = a.replace(o.match[h], "");
                            break
                        }
                    }
                }
            }
            d || (d = typeof b.getElementsByTagName != "undefined" ? b.getElementsByTagName("*") : []);
            return {
                set: d,
                expr: a
            }
        },
        m.filter = function(a, c, d, e) {
            var f, g, h, i, j, k, l, n, p, q = a,
            r = [],
            s = c,
            t = c && c[0] && m.isXML(c[0]);
            while (a && c.length) {
                for (h in o.filter) if ((f = o.leftMatch[h].exec(a)) != null && f[2]) {
                    k = o.filter[h],
                    l = f[1],
                    g = !1,
                    f.splice(1, 1);
                    if (l.substr(l.length - 1) === "\\") continue;
                    s === r && (r = []);
                    if (o.preFilter[h]) {
                        f = o.preFilter[h](f, s, d, r, e, t);
                        if (!f) g = i = !0;
                        else if (f === !0) continue
                    }
                    if (f) for (n = 0; (j = s[n]) != null; n++) j && (i = k(j, f, n, s), p = e ^ i, d && i != null ? p ? g = !0 : s[n] = !1 : p && (r.push(j), g = !0));
                    if (i !== b) {
                        d || (s = r),
                        a = a.replace(o.match[h], "");
                        if (!g) return [];
                        break
                    }
                }
                if (a === q) if (g == null) m.error(a);
                else break;
                q = a
            }
            return s
        },
        m.error = function(a) {
            throw new Error("Syntax error, unrecognized expression: " + a)
        };
        var n = m.getText = function(a) {
            var b, c, d = a.nodeType,
            e = "";
            if (d) {
                if (d === 1 || d === 9 || d === 11) {
                    if (typeof a.textContent == "string") return a.textContent;
                    if (typeof a.innerText == "string") return a.innerText.replace(k, "");
                    for (a = a.firstChild; a; a = a.nextSibling) e += n(a)
                } else if (d === 3 || d === 4) return a.nodeValue
            } else for (b = 0; c = a[b]; b++) c.nodeType !== 8 && (e += n(c));
            return e
        },
        o = m.selectors = {
            order: ["ID", "NAME", "TAG"],
            match: {
                ID: /#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
                CLASS: /\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,
                NAME: /\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,
                ATTR: /\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,
                TAG: /^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,
                CHILD: /:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,
                POS: /:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,
                PSEUDO: /:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/
            },
            leftMatch: {},
            attrMap: {
                "class": "className",
                "for": "htmlFor"
            },
            attrHandle: {
                href: function(a) {
                    return a.getAttribute("href")
                },
                type: function(a) {
                    return a.getAttribute("type")
                }
            },
            relative: {
                "+": function(a, b) {
                    var c = typeof b == "string",
                    d = c && !l.test(b),
                    e = c && !d;
                    d && (b = b.toLowerCase());
                    for (var f = 0,
                    g = a.length,
                    h; f < g; f++) if (h = a[f]) {
                        while ((h = h.previousSibling) && h.nodeType !== 1);
                        a[f] = e || h && h.nodeName.toLowerCase() === b ? h || !1 : h === b
                    }
                    e && m.filter(b, a, !0)
                },
                ">": function(a, b) {
                    var c, d = typeof b == "string",
                    e = 0,
                    f = a.length;
                    if (d && !l.test(b)) {
                        b = b.toLowerCase();
                        for (; e < f; e++) {
                            c = a[e];
                            if (c) {
                                var g = c.parentNode;
                                a[e] = g.nodeName.toLowerCase() === b ? g: !1
                            }
                        }
                    } else {
                        for (; e < f; e++) c = a[e],
                        c && (a[e] = d ? c.parentNode: c.parentNode === b);
                        d && m.filter(b, a, !0)
                    }
                },
                "": function(a, b, c) {
                    var d, f = e++,
                    g = x;
                    typeof b == "string" && !l.test(b) && (b = b.toLowerCase(), d = b, g = w),
                    g("parentNode", b, f, a, d, c)
                },
                "~": function(a, b, c) {
                    var d, f = e++,
                    g = x;
                    typeof b == "string" && !l.test(b) && (b = b.toLowerCase(), d = b, g = w),
                    g("previousSibling", b, f, a, d, c)
                }
            },
            find: {
                ID: function(a, b, c) {
                    if (typeof b.getElementById != "undefined" && !c) {
                        var d = b.getElementById(a[1]);
                        return d && d.parentNode ? [d] : []
                    }
                },
                NAME: function(a, b) {
                    if (typeof b.getElementsByName != "undefined") {
                        var c = [],
                        d = b.getElementsByName(a[1]);
                        for (var e = 0,
                        f = d.length; e < f; e++) d[e].getAttribute("name") === a[1] && c.push(d[e]);
                        return c.length === 0 ? null: c
                    }
                },
                TAG: function(a, b) {
                    if (typeof b.getElementsByTagName != "undefined") return b.getElementsByTagName(a[1])
                }
            },
            preFilter: {
                CLASS: function(a, b, c, d, e, f) {
                    a = " " + a[1].replace(j, "") + " ";
                    if (f) return a;
                    for (var g = 0,
                    h; (h = b[g]) != null; g++) h && (e ^ (h.className && (" " + h.className + " ").replace(/[\t\n\r]/g, " ").indexOf(a) >= 0) ? c || d.push(h) : c && (b[g] = !1));
                    return ! 1
                },
                ID: function(a) {
                    return a[1].replace(j, "")
                },
                TAG: function(a, b) {
                    return a[1].replace(j, "").toLowerCase()
                },
                CHILD: function(a) {
                    if (a[1] === "nth") {
                        a[2] || m.error(a[0]),
                        a[2] = a[2].replace(/^\+|\s*/g, "");
                        var b = /(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2] === "even" && "2n" || a[2] === "odd" && "2n+1" || !/\D/.test(a[2]) && "0n+" + a[2] || a[2]);
                        a[2] = b[1] + (b[2] || 1) - 0,
                        a[3] = b[3] - 0
                    } else a[2] && m.error(a[0]);
                    a[0] = e++;
                    return a
                },
                ATTR: function(a, b, c, d, e, f) {
                    var g = a[1] = a[1].replace(j, ""); ! f && o.attrMap[g] && (a[1] = o.attrMap[g]),
                    a[4] = (a[4] || a[5] || "").replace(j, ""),
                    a[2] === "~=" && (a[4] = " " + a[4] + " ");
                    return a
                },
                PSEUDO: function(b, c, d, e, f) {
                    if (b[1] === "not") if ((a.exec(b[3]) || "").length > 1 || /^\w/.test(b[3])) b[3] = m(b[3], null, null, c);
                    else {
                        var g = m.filter(b[3], c, d, !0 ^ f);
                        d || e.push.apply(e, g);
                        return ! 1
                    } else if (o.match.POS.test(b[0]) || o.match.CHILD.test(b[0])) return ! 0;
                    return b
                },
                POS: function(a) {
                    a.unshift(!0);
                    return a
                }
            },
            filters: {
                enabled: function(a) {
                    return a.disabled === !1 && a.type !== "hidden"
                },
                disabled: function(a) {
                    return a.disabled === !0
                },
                checked: function(a) {
                    return a.checked === !0
                },
                selected: function(a) {
                    a.parentNode && a.parentNode.selectedIndex;
                    return a.selected === !0
                },
                parent: function(a) {
                    return !! a.firstChild
                },
                empty: function(a) {
                    return ! a.firstChild
                },
                has: function(a, b, c) {
                    return !! m(c[3], a).length
                },
                header: function(a) {
                    return /h\d/i.test(a.nodeName)
                },
                text: function(a) {
                    var b = a.getAttribute("type"),
                    c = a.type;
                    return a.nodeName.toLowerCase() === "input" && "text" === c && (b === c || b === null)
                },
                radio: function(a) {
                    return a.nodeName.toLowerCase() === "input" && "radio" === a.type
                },
                checkbox: function(a) {
                    return a.nodeName.toLowerCase() === "input" && "checkbox" === a.type
                },
                file: function(a) {
                    return a.nodeName.toLowerCase() === "input" && "file" === a.type
                },
                password: function(a) {
                    return a.nodeName.toLowerCase() === "input" && "password" === a.type
                },
                submit: function(a) {
                    var b = a.nodeName.toLowerCase();
                    return (b === "input" || b === "button") && "submit" === a.type
                },
                image: function(a) {
                    return a.nodeName.toLowerCase() === "input" && "image" === a.type
                },
                reset: function(a) {
                    var b = a.nodeName.toLowerCase();
                    return (b === "input" || b === "button") && "reset" === a.type
                },
                button: function(a) {
                    var b = a.nodeName.toLowerCase();
                    return b === "input" && "button" === a.type || b === "button"
                },
                input: function(a) {
                    return /input|select|textarea|button/i.test(a.nodeName)
                },
                focus: function(a) {
                    return a === a.ownerDocument.activeElement
                }
            },
            setFilters: {
                first: function(a, b) {
                    return b === 0
                },
                last: function(a, b, c, d) {
                    return b === d.length - 1
                },
                even: function(a, b) {
                    return b % 2 === 0
                },
                odd: function(a, b) {
                    return b % 2 === 1
                },
                lt: function(a, b, c) {
                    return b < c[3] - 0
                },
                gt: function(a, b, c) {
                    return b > c[3] - 0
                },
                nth: function(a, b, c) {
                    return c[3] - 0 === b
                },
                eq: function(a, b, c) {
                    return c[3] - 0 === b
                }
            },
            filter: {
                PSEUDO: function(a, b, c, d) {
                    var e = b[1],
                    f = o.filters[e];
                    if (f) return f(a, c, b, d);
                    if (e === "contains") return (a.textContent || a.innerText || n([a]) || "").indexOf(b[3]) >= 0;
                    if (e === "not") {
                        var g = b[3];
                        for (var h = 0,
                        i = g.length; h < i; h++) if (g[h] === a) return ! 1;
                        return ! 0
                    }
                    m.error(e)
                },
                CHILD: function(a, b) {
                    var c, e, f, g, h, i, j, k = b[1],
                    l = a;
                    switch (k) {
                    case "only":
                    case "first":
                        while (l = l.previousSibling) if (l.nodeType === 1) return ! 1;
                        if (k === "first") return ! 0;
                        l = a;
                    case "last":
                        while (l = l.nextSibling) if (l.nodeType === 1) return ! 1;
                        return ! 0;
                    case "nth":
                        c = b[2],
                        e = b[3];
                        if (c === 1 && e === 0) return ! 0;
                        f = b[0],
                        g = a.parentNode;
                        if (g && (g[d] !== f || !a.nodeIndex)) {
                            i = 0;
                            for (l = g.firstChild; l; l = l.nextSibling) l.nodeType === 1 && (l.nodeIndex = ++i);
                            g[d] = f
                        }
                        j = a.nodeIndex - e;
                        return c === 0 ? j === 0 : j % c === 0 && j / c >= 0
                    }
                },
                ID: function(a, b) {
                    return a.nodeType === 1 && a.getAttribute("id") === b
                },
                TAG: function(a, b) {
                    return b === "*" && a.nodeType === 1 || !!a.nodeName && a.nodeName.toLowerCase() === b
                },
                CLASS: function(a, b) {
                    return (" " + (a.className || a.getAttribute("class")) + " ").indexOf(b) > -1
                },
                ATTR: function(a, b) {
                    var c = b[1],
                    d = m.attr ? m.attr(a, c) : o.attrHandle[c] ? o.attrHandle[c](a) : a[c] != null ? a[c] : a.getAttribute(c),
                    e = d + "",
                    f = b[2],
                    g = b[4];
                    return d == null ? f === "!=": !f && m.attr ? d != null: f === "=" ? e === g: f === "*=" ? e.indexOf(g) >= 0 : f === "~=" ? (" " + e + " ").indexOf(g) >= 0 : g ? f === "!=" ? e !== g: f === "^=" ? e.indexOf(g) === 0 : f === "$=" ? e.substr(e.length - g.length) === g: f === "|=" ? e === g || e.substr(0, g.length + 1) === g + "-": !1 : e && d !== !1
                },
                POS: function(a, b, c, d) {
                    var e = b[2],
                    f = o.setFilters[e];
                    if (f) return f(a, c, b, d)
                }
            }
        },
        p = o.match.POS,
        q = function(a, b) {
            return "\\" + (b - 0 + 1)
        };
        for (var r in o.match) o.match[r] = new RegExp(o.match[r].source + /(?![^\[]*\])(?![^\(]*\))/.source),
        o.leftMatch[r] = new RegExp(/(^(?:.|\r|\n)*?)/.source + o.match[r].source.replace(/\\(\d+)/g, q));
        o.match.globalPOS = p;
        var s = function(a, b) {
            a = Array.prototype.slice.call(a, 0);
            if (b) {
                b.push.apply(b, a);
                return b
            }
            return a
        };
        try {
            Array.prototype.slice.call(c.documentElement.childNodes, 0)[0].nodeType
        } catch(t) {
            s = function(a, b) {
                var c = 0,
                d = b || [];
                if (g.call(a) === "[object Array]") Array.prototype.push.apply(d, a);
                else if (typeof a.length == "number") for (var e = a.length; c < e; c++) d.push(a[c]);
                else for (; a[c]; c++) d.push(a[c]);
                return d
            }
        }
        var u, v;
        c.documentElement.compareDocumentPosition ? u = function(a, b) {
            if (a === b) {
                h = !0;
                return 0
            }
            if (!a.compareDocumentPosition || !b.compareDocumentPosition) return a.compareDocumentPosition ? -1 : 1;
            return a.compareDocumentPosition(b) & 4 ? -1 : 1
        }: (u = function(a, b) {
            if (a === b) {
                h = !0;
                return 0
            }
            if (a.sourceIndex && b.sourceIndex) return a.sourceIndex - b.sourceIndex;
            var c, d, e = [],
            f = [],
            g = a.parentNode,
            i = b.parentNode,
            j = g;
            if (g === i) return v(a, b);
            if (!g) return - 1;
            if (!i) return 1;
            while (j) e.unshift(j),
            j = j.parentNode;
            j = i;
            while (j) f.unshift(j),
            j = j.parentNode;
            c = e.length,
            d = f.length;
            for (var k = 0; k < c && k < d; k++) if (e[k] !== f[k]) return v(e[k], f[k]);
            return k === c ? v(a, f[k], -1) : v(e[k], b, 1)
        },
        v = function(a, b, c) {
            if (a === b) return c;
            var d = a.nextSibling;
            while (d) {
                if (d === b) return - 1;
                d = d.nextSibling
            }
            return 1
        }),
        function() {
            var a = c.createElement("div"),
            d = "script" + (new Date).getTime(),
            e = c.documentElement;
            a.innerHTML = "<a name='" + d + "'/>",
            e.insertBefore(a, e.firstChild),
            c.getElementById(d) && (o.find.ID = function(a, c, d) {
                if (typeof c.getElementById != "undefined" && !d) {
                    var e = c.getElementById(a[1]);
                    return e ? e.id === a[1] || typeof e.getAttributeNode != "undefined" && e.getAttributeNode("id").nodeValue === a[1] ? [e] : b: []
                }
            },
            o.filter.ID = function(a, b) {
                var c = typeof a.getAttributeNode != "undefined" && a.getAttributeNode("id");
                return a.nodeType === 1 && c && c.nodeValue === b
            }),
            e.removeChild(a),
            e = a = null
        } (),
        function() {
            var a = c.createElement("div");
            a.appendChild(c.createComment("")),
            a.getElementsByTagName("*").length > 0 && (o.find.TAG = function(a, b) {
                var c = b.getElementsByTagName(a[1]);
                if (a[1] === "*") {
                    var d = [];
                    for (var e = 0; c[e]; e++) c[e].nodeType === 1 && d.push(c[e]);
                    c = d
                }
                return c
            }),
            a.innerHTML = "<a href='#'></a>",
            a.firstChild && typeof a.firstChild.getAttribute != "undefined" && a.firstChild.getAttribute("href") !== "#" && (o.attrHandle.href = function(a) {
                return a.getAttribute("href", 2)
            }),
            a = null
        } (),
        c.querySelectorAll &&
        function() {
            var a = m,
            b = c.createElement("div"),
            d = "__sizzle__";
            b.innerHTML = "<p class='TEST'></p>";
            if (!b.querySelectorAll || b.querySelectorAll(".TEST").length !== 0) {
                m = function(b, e, f, g) {
                    e = e || c;
                    if (!g && !m.isXML(e)) {
                        var h = /^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);
                        if (h && (e.nodeType === 1 || e.nodeType === 9)) {
                            if (h[1]) return s(e.getElementsByTagName(b), f);
                            if (h[2] && o.find.CLASS && e.getElementsByClassName) return s(e.getElementsByClassName(h[2]), f)
                        }
                        if (e.nodeType === 9) {
                            if (b === "body" && e.body) return s([e.body], f);
                            if (h && h[3]) {
                                var i = e.getElementById(h[3]);
                                if (!i || !i.parentNode) return s([], f);
                                if (i.id === h[3]) return s([i], f)
                            }
                            try {
                                return s(e.querySelectorAll(b), f)
                            } catch(j) {}
                        } else if (e.nodeType === 1 && e.nodeName.toLowerCase() !== "object") {
                            var k = e,
                            l = e.getAttribute("id"),
                            n = l || d,
                            p = e.parentNode,
                            q = /^\s*[+~]/.test(b);
                            l ? n = n.replace(/'/g, "\\$&") : e.setAttribute("id", n),
                            q && p && (e = e.parentNode);
                            try {
                                if (!q || p) return s(e.querySelectorAll("[id='" + n + "'] " + b), f)
                            } catch(r) {} finally {
                                l || k.removeAttribute("id")
                            }
                        }
                    }
                    return a(b, e, f, g)
                };
                for (var e in a) m[e] = a[e];
                b = null
            }
        } (),
        function() {
            var a = c.documentElement,
            b = a.matchesSelector || a.mozMatchesSelector || a.webkitMatchesSelector || a.msMatchesSelector;
            if (b) {
                var d = !b.call(c.createElement("div"), "div"),
                e = !1;
                try {
                    b.call(c.documentElement, "[test!='']:sizzle")
                } catch(f) {
                    e = !0
                }
                m.matchesSelector = function(a, c) {
                    c = c.replace(/\=\s*([^'"\]]*)\s*\]/g, "='$1']");
                    if (!m.isXML(a)) try {
                        if (e || !o.match.PSEUDO.test(c) && !/!=/.test(c)) {
                            var f = b.call(a, c);
                            if (f || !d || a.document && a.document.nodeType !== 11) return f
                        }
                    } catch(g) {}
                    return m(c, null, null, [a]).length > 0
                }
            }
        } (),
        function() {
            var a = c.createElement("div");
            a.innerHTML = "<div class='test e'></div><div class='test'></div>";
            if ( !! a.getElementsByClassName && a.getElementsByClassName("e").length !== 0) {
                a.lastChild.className = "e";
                if (a.getElementsByClassName("e").length === 1) return;
                o.order.splice(1, 0, "CLASS"),
                o.find.CLASS = function(a, b, c) {
                    if (typeof b.getElementsByClassName != "undefined" && !c) return b.getElementsByClassName(a[1])
                },
                a = null
            }
        } (),
        c.documentElement.contains ? m.contains = function(a, b) {
            return a !== b && (a.contains ? a.contains(b) : !0)
        }: c.documentElement.compareDocumentPosition ? m.contains = function(a, b) {
            return !! (a.compareDocumentPosition(b) & 16)
        }: m.contains = function() {
            return ! 1
        },
        m.isXML = function(a) {
            var b = (a ? a.ownerDocument || a: 0).documentElement;
            return b ? b.nodeName !== "HTML": !1
        };
        var y = function(a, b, c) {
            var d, e = [],
            f = "",
            g = b.nodeType ? [b] : b;
            while (d = o.match.PSEUDO.exec(a)) f += d[0],
            a = a.replace(o.match.PSEUDO, "");
            a = o.relative[a] ? a + "*": a;
            for (var h = 0,
            i = g.length; h < i; h++) m(a, g[h], e, c);
            return m.filter(f, e)
        };
        m.attr = f.attr,
        m.selectors.attrMap = {},
        f.find = m,
        f.expr = m.selectors,
        f.expr[":"] = f.expr.filters,
        f.unique = m.uniqueSort,
        f.text = m.getText,
        f.isXMLDoc = m.isXML,
        f.contains = m.contains
    } ();
    var L = /Until$/,
    M = /^(?:parents|prevUntil|prevAll)/,
    N = /,/,
    O = /^.[^:#\[\.,]*$/,
    P = Array.prototype.slice,
    Q = f.expr.match.globalPOS,
    R = {
        children: !0,
        contents: !0,
        next: !0,
        prev: !0
    };
    f.fn.extend({
        find: function(a) {
            var b = this,
            c, d;
            if (typeof a != "string") return f(a).filter(function() {
                for (c = 0, d = b.length; c < d; c++) if (f.contains(b[c], this)) return ! 0
            });
            var e = this.pushStack("", "find", a),
            g,
            h,
            i;
            for (c = 0, d = this.length; c < d; c++) {
                g = e.length,
                f.find(a, this[c], e);
                if (c > 0) for (h = g; h < e.length; h++) for (i = 0; i < g; i++) if (e[i] === e[h]) {
                    e.splice(h--, 1);
                    break
                }
            }
            return e
        },
        has: function(a) {
            var b = f(a);
            return this.filter(function() {
                for (var a = 0,
                c = b.length; a < c; a++) if (f.contains(this, b[a])) return ! 0
            })
        },
        not: function(a) {
            return this.pushStack(T(this, a, !1), "not", a)
        },
        filter: function(a) {
            return this.pushStack(T(this, a, !0), "filter", a)
        },
        is: function(a) {
            return !! a && (typeof a == "string" ? Q.test(a) ? f(a, this.context).index(this[0]) >= 0 : f.filter(a, this).length > 0 : this.filter(a).length > 0)
        },
        closest: function(a, b) {
            var c = [],
            d,
            e,
            g = this[0];
            if (f.isArray(a)) {
                var h = 1;
                while (g && g.ownerDocument && g !== b) {
                    for (d = 0; d < a.length; d++) f(g).is(a[d]) && c.push({
                        selector: a[d],
                        elem: g,
                        level: h
                    });
                    g = g.parentNode,
                    h++
                }
                return c
            }
            var i = Q.test(a) || typeof a != "string" ? f(a, b || this.context) : 0;
            for (d = 0, e = this.length; d < e; d++) {
                g = this[d];
                while (g) {
                    if (i ? i.index(g) > -1 : f.find.matchesSelector(g, a)) {
                        c.push(g);
                        break
                    }
                    g = g.parentNode;
                    if (!g || !g.ownerDocument || g === b || g.nodeType === 11) break
                }
            }
            c = c.length > 1 ? f.unique(c) : c;
            return this.pushStack(c, "closest", a)
        },
        index: function(a) {
            if (!a) return this[0] && this[0].parentNode ? this.prevAll().length: -1;
            if (typeof a == "string") return f.inArray(this[0], f(a));
            return f.inArray(a.jquery ? a[0] : a, this)
        },
        add: function(a, b) {
            var c = typeof a == "string" ? f(a, b) : f.makeArray(a && a.nodeType ? [a] : a),
            d = f.merge(this.get(), c);
            return this.pushStack(S(c[0]) || S(d[0]) ? d: f.unique(d))
        },
        andSelf: function() {
            return this.add(this.prevObject)
        }
    }),
    f.each({
        parent: function(a) {
            var b = a.parentNode;
            return b && b.nodeType !== 11 ? b: null
        },
        parents: function(a) {
            return f.dir(a, "parentNode")
        },
        parentsUntil: function(a, b, c) {
            return f.dir(a, "parentNode", c)
        },
        next: function(a) {
            return f.nth(a, 2, "nextSibling")
        },
        prev: function(a) {
            return f.nth(a, 2, "previousSibling")
        },
        nextAll: function(a) {
            return f.dir(a, "nextSibling")
        },
        prevAll: function(a) {
            return f.dir(a, "previousSibling")
        },
        nextUntil: function(a, b, c) {
            return f.dir(a, "nextSibling", c)
        },
        prevUntil: function(a, b, c) {
            return f.dir(a, "previousSibling", c)
        },
        siblings: function(a) {
            return f.sibling((a.parentNode || {}).firstChild, a)
        },
        children: function(a) {
            return f.sibling(a.firstChild)
        },
        contents: function(a) {
            return f.nodeName(a, "iframe") ? a.contentDocument || a.contentWindow.document: f.makeArray(a.childNodes)
        }
    },
    function(a, b) {
        f.fn[a] = function(c, d) {
            var e = f.map(this, b, c);
            L.test(a) || (d = c),
            d && typeof d == "string" && (e = f.filter(d, e)),
            e = this.length > 1 && !R[a] ? f.unique(e) : e,
            (this.length > 1 || N.test(d)) && M.test(a) && (e = e.reverse());
            return this.pushStack(e, a, P.call(arguments).join(","))
        }
    }),
    f.extend({
        filter: function(a, b, c) {
            c && (a = ":not(" + a + ")");
            return b.length === 1 ? f.find.matchesSelector(b[0], a) ? [b[0]] : [] : f.find.matches(a, b)
        },
        dir: function(a, c, d) {
            var e = [],
            g = a[c];
            while (g && g.nodeType !== 9 && (d === b || g.nodeType !== 1 || !f(g).is(d))) g.nodeType === 1 && e.push(g),
            g = g[c];
            return e
        },
        nth: function(a, b, c, d) {
            b = b || 1;
            var e = 0;
            for (; a; a = a[c]) if (a.nodeType === 1 && ++e === b) break;
            return a
        },
        sibling: function(a, b) {
            var c = [];
            for (; a; a = a.nextSibling) a.nodeType === 1 && a !== b && c.push(a);
            return c
        }
    });
    var V = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",
    W = / jQuery\d+="(?:\d+|null)"/g,
    X = /^\s+/,
    Y = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,
    Z = /<([\w:]+)/,
    $ = /<tbody/i,
    pW = /<|&#?\w+;/,
    ba = /<(?:script|style)/i,
    bb = /<(?:script|object|embed|option|style)/i,
    bc = new RegExp("<(?:" + V + ")[\\s/>]", "i"),
    bd = /checked\s*(?:[^=]|=\s*.checked.)/i,
    be = /\/(java|ecma)script/i,
    bf = /^\s*<!(?:\[CDATA\[|\-\-)/,
    bg = {
        option: [1, "<select multiple='multiple'>", "</select>"],
        legend: [1, "<fieldset>", "</fieldset>"],
        thead: [1, "<table>", "</table>"],
        tr: [2, "<table><tbody>", "</tbody></table>"],
        td: [3, "<table><tbody><tr>", "</tr></tbody></table>"],
        col: [2, "<table><tbody></tbody><colgroup>", "</colgroup></table>"],
        area: [1, "<map>", "</map>"],
        fd: [0, "", ""]
    },
    bh = U(c);
    bg.optgroup = bg.option,
    bg.tbody = bg.tfoot = bg.colgroup = bg.caption = bg.thead,
    bg.th = bg.td,
    f.support.htmlSerialize || (bg.fd = [1, "div<div>", "</div>"]),
    f.fn.extend({
        text: function(a) {
            return f.access(this,
            function(a) {
                return a === b ? f.text(this) : this.empty().append((this[0] && this[0].ownerDocument || c).createTextNode(a))
            },
            null, a, arguments.length)
        },
        wrapAll: function(a) {
            if (f.isFunction(a)) return this.each(function(b) {
                f(this).wrapAll(a.call(this, b))
            });
            if (this[0]) {
                var b = f(a, this[0].ownerDocument).eq(0).clone(!0);
                this[0].parentNode && b.insertBefore(this[0]),
                b.map(function() {
                    var a = this;
                    while (a.firstChild && a.firstChild.nodeType === 1) a = a.firstChild;
                    return a
                }).append(this)
            }
            return this
        },
        wrapInner: function(a) {
            if (f.isFunction(a)) return this.each(function(b) {
                f(this).wrapInner(a.call(this, b))
            });
            return this.each(function() {
                var b = f(this),
                c = b.contents();
                c.length ? c.wrapAll(a) : b.append(a)
            })
        },
        wrap: function(a) {
            var b = f.isFunction(a);
            return this.each(function(c) {
                f(this).wrapAll(b ? a.call(this, c) : a)
            })
        },
        unwrap: function() {
            return this.parent().each(function() {
                f.nodeName(this, "body") || f(this).replaceWith(this.childNodes)
            }).end()
        },
        append: function() {
            return this.domManip(arguments, !0,
            function(a) {
                this.nodeType === 1 && this.appendChild(a)
            })
        },
        prepend: function() {
            return this.domManip(arguments, !0,
            function(a) {
                this.nodeType === 1 && this.insertBefore(a, this.firstChild)
            })
        },
        before: function() {
            if (this[0] && this[0].parentNode) return this.domManip(arguments, !1,
            function(a) {
                this.parentNode.insertBefore(a, this)
            });
            if (arguments.length) {
                var a = f.clean(arguments);
                a.push.apply(a, this.toArray());
                return this.pushStack(a, "before", arguments)
            }
        },
        after: function() {
            if (this[0] && this[0].parentNode) return this.domManip(arguments, !1,
            function(a) {
                this.parentNode.insertBefore(a, this.nextSibling)
            });
            if (arguments.length) {
                var a = this.pushStack(this, "after", arguments);
                a.push.apply(a, f.clean(arguments));
                return a
            }
        },
        remove: function(a, b) {
            for (var c = 0,
            d; (d = this[c]) != null; c++) if (!a || f.filter(a, [d]).length) ! b && d.nodeType === 1 && (f.cleanData(d.getElementsByTagName("*")), f.cleanData([d])),
            d.parentNode && d.parentNode.removeChild(d);
            return this
        },
        empty: function() {
            for (var a = 0,
            b; (b = this[a]) != null; a++) {
                b.nodeType === 1 && f.cleanData(b.getElementsByTagName("*"));
                while (b.firstChild) b.removeChild(b.firstChild)
            }
            return this
        },
        clone: function(a, b) {
            a = a == null ? !1 : a,
            b = b == null ? a: b;
            return this.map(function() {
                return f.clone(this, a, b)
            })
        },
        html: function(a) {
            return f.access(this,
            function(a) {
                var c = this[0] || {},
                d = 0,
                e = this.length;
                if (a === b) return c.nodeType === 1 ? c.innerHTML.replace(W, "") : null;
                if (typeof a == "string" && !ba.test(a) && (f.support.leadingWhitespace || !X.test(a)) && !bg[(Z.exec(a) || ["", ""])[1].toLowerCase()]) {
                    a = a.replace(Y, "<$1></$2>");
                    try {
                        for (; d < e; d++) c = this[d] || {},
                        c.nodeType === 1 && (f.cleanData(c.getElementsByTagName("*")), c.innerHTML = a);
                        c = 0
                    } catch(g) {}
                }
                c && this.empty().append(a)
            },
            null, a, arguments.length)
        },
        replaceWith: function(a) {
            if (this[0] && this[0].parentNode) {
                if (f.isFunction(a)) return this.each(function(b) {
                    var c = f(this),
                    d = c.html();
                    c.replaceWith(a.call(this, b, d))
                });
                typeof a != "string" && (a = f(a).detach());
                return this.each(function() {
                    var b = this.nextSibling,
                    c = this.parentNode;
                    f(this).remove(),
                    b ? f(b).before(a) : f(c).append(a)
                })
            }
            return this.length ? this.pushStack(f(f.isFunction(a) ? a() : a), "replaceWith", a) : this
        },
        detach: function(a) {
            return this.remove(a, !0)
        },
        domManip: function(a, c, d) {
            var e, g, h, i, j = a[0],
            k = [];
            if (!f.support.checkClone && arguments.length === 3 && typeof j == "string" && bd.test(j)) return this.each(function() {
                f(this).domManip(a, c, d, !0)
            });
            if (f.isFunction(j)) return this.each(function(e) {
                var g = f(this);
                a[0] = j.call(this, e, c ? g.html() : b),
                g.domManip(a, c, d)
            });
            if (this[0]) {
                i = j && j.parentNode,
                f.support.parentNode && i && i.nodeType === 11 && i.childNodes.length === this.length ? e = {
                    fragment: i
                }: e = f.buildFragment(a, this, k),
                h = e.fragment,
                h.childNodes.length === 1 ? g = h = h.firstChild: g = h.firstChild;
                if (g) {
                    c = c && f.nodeName(g, "tr");
                    for (var l = 0,
                    m = this.length,
                    n = m - 1; l < m; l++) d.call(c ? bi(this[l], g) : this[l], e.cacheable || m > 1 && l < n ? f.clone(h, !0, !0) : h)
                }
                k.length && f.each(k,
                function(a, b) {
                    b.src ? f.ajax({
                        type: "GET",
                        global: !1,
                        url: b.src,
                        async: !1,
                        dataType: "script"
                    }) : f.globalEval((b.text || b.textContent || b.innerHTML || "").replace(bf, "/*$0*/")),
                    b.parentNode && b.parentNode.removeChild(b)
                })
            }
            return this
        }
    }),
    f.buildFragment = function(a, b, d) {
        var e, g, h, i, j = a[0];
        b && b[0] && (i = b[0].ownerDocument || b[0]),
        i.createDocumentFragment || (i = c),
        a.length === 1 && typeof j == "string" && j.length < 512 && i === c && j.charAt(0) === "<" && !bb.test(j) && (f.support.checkClone || !bd.test(j)) && (f.support.html5Clone || !bc.test(j)) && (g = !0, h = f.fragments[j], h && h !== 1 && (e = h)),
        e || (e = i.createDocumentFragment(), f.clean(a, i, e, d)),
        g && (f.fragments[j] = h ? e: 1);
        return {
            fragment: e,
            cacheable: g
        }
    },
    f.fragments = {},
    f.each({
        appendTo: "append",
        prependTo: "prepend",
        insertBefore: "before",
        insertAfter: "after",
        replaceAll: "replaceWith"
    },
    function(a, b) {
        f.fn[a] = function(c) {
            var d = [],
            e = f(c),
            g = this.length === 1 && this[0].parentNode;
            if (g && g.nodeType === 11 && g.childNodes.length === 1 && e.length === 1) {
                e[b](this[0]);
                return this
            }
            for (var h = 0,
            i = e.length; h < i; h++) {
                var j = (h > 0 ? this.clone(!0) : this).get();
                f(e[h])[b](j),
                d = d.concat(j)
            }
            return this.pushStack(d, a, e.selector)
        }
    }),
    f.extend({
        clone: function(a, b, c) {
            var d, e, g, h = f.support.html5Clone || f.isXMLDoc(a) || !bc.test("<" + a.nodeName + ">") ? a.cloneNode(!0) : bo(a);
            if ((!f.support.noCloneEvent || !f.support.noCloneChecked) && (a.nodeType === 1 || a.nodeType === 11) && !f.isXMLDoc(a)) {
                bk(a, h),
                d = bl(a),
                e = bl(h);
                for (g = 0; d[g]; ++g) e[g] && bk(d[g], e[g])
            }
            if (b) {
                bj(a, h);
                if (c) {
                    d = bl(a),
                    e = bl(h);
                    for (g = 0; d[g]; ++g) bj(d[g], e[g])
                }
            }
            d = e = null;
            return h
        },
        clean: function(a, b, d, e) {
            var g, h, i, j = [];
            b = b || c,
            typeof b.createElement == "undefined" && (b = b.ownerDocument || b[0] && b[0].ownerDocument || c);
            for (var k = 0,
            l; (l = a[k]) != null; k++) {
                typeof l == "number" && (l += "");
                if (!l) continue;
                if (typeof l == "string") if (!pW.test(l)) l = b.createTextNode(l);
                else {
                    l = l.replace(Y, "<$1></$2>");
                    var m = (Z.exec(l) || ["", ""])[1].toLowerCase(),
                    n = bg[m] || bg.fd,
                    o = n[0],
                    p = b.createElement("div"),
                    q = bh.childNodes,
                    r;
                    b === c ? bh.appendChild(p) : U(b).appendChild(p),
                    p.innerHTML = n[1] + l + n[2];
                    while (o--) p = p.lastChild;
                    if (!f.support.tbody) {
                        var s = $.test(l),
                        t = m === "table" && !s ? p.firstChild && p.firstChild.childNodes: n[1] === "<table>" && !s ? p.childNodes: [];
                        for (i = t.length - 1; i >= 0; --i) f.nodeName(t[i], "tbody") && !t[i].childNodes.length && t[i].parentNode.removeChild(t[i])
                    } ! f.support.leadingWhitespace && X.test(l) && p.insertBefore(b.createTextNode(X.exec(l)[0]), p.firstChild),
                    l = p.childNodes,
                    p && (p.parentNode.removeChild(p), q.length > 0 && (r = q[q.length - 1], r && r.parentNode && r.parentNode.removeChild(r)))
                }
                var u;
                if (!f.support.appendChecked) if (l[0] && typeof(u = l.length) == "number") for (i = 0; i < u; i++) bn(l[i]);
                else bn(l);
                l.nodeType ? j.push(l) : j = f.merge(j, l)
            }
            if (d) {
                g = function(a) {
                    return ! a.type || be.test(a.type)
                };
                for (k = 0; j[k]; k++) {
                    h = j[k];
                    if (e && f.nodeName(h, "script") && (!h.type || be.test(h.type))) e.push(h.parentNode ? h.parentNode.removeChild(h) : h);
                    else {
                        if (h.nodeType === 1) {
                            var v = f.grep(h.getElementsByTagName("script"), g);
                            j.splice.apply(j, [k + 1, 0].concat(v))
                        }
                        d.appendChild(h)
                    }
                }
            }
            return j
        },
        cleanData: function(a) {
            var b, c, d = f.cache,
            e = f.event.special,
            g = f.support.deleteExpando;
            for (var h = 0,
            i; (i = a[h]) != null; h++) {
                if (i.nodeName && f.noData[i.nodeName.toLowerCase()]) continue;
                c = i[f.expando];
                if (c) {
                    b = d[c];
                    if (b && b.events) {
                        for (var j in b.events) e[j] ? f.event.remove(i, j) : f.removeEvent(i, j, b.handle);
                        b.handle && (b.handle.elem = null)
                    }
                    g ? delete i[f.expando] : i.removeAttribute && i.removeAttribute(f.expando),
                    delete d[c]
                }
            }
        }
    });
    var bp = /alpha\([^)]*\)/i,
    bq = /opacity=([^)]*)/,
    br = /([A-Z]|^ms)/g,
    bs = /^[\-+]?(?:\d*\.)?\d+$/i,
    bt = /^-?(?:\d*\.)?\d+(?!px)[^\d\s]+$/i,
    bu = /^([\-+])=([\-+.\de]+)/,
    bv = /^margin/,
    bw = {
        position: "absolute",
        visibility: "hidden",
        display: "block"
    },
    bx = ["Top", "Right", "Bottom", "Left"],
    by,
    bz,
    bA;
    f.fn.css = function(a, c) {
        return f.access(this,
        function(a, c, d) {
            return d !== b ? f.style(a, c, d) : f.css(a, c)
        },
        a, c, arguments.length > 1)
    },
    f.extend({
        cssHooks: {
            opacity: {
                get: function(a, b) {
                    if (b) {
                        var c = by(a, "opacity");
                        return c === "" ? "1": c
                    }
                    return a.style.opacity
                }
            }
        },
        cssNumber: {
            fillOpacity: !0,
            fontWeight: !0,
            lineHeight: !0,
            opacity: !0,
            orphans: !0,
            widows: !0,
            zIndex: !0,
            zoom: !0
        },
        cssProps: {
            "float": f.support.cssFloat ? "cssFloat": "styleFloat"
        },
        style: function(a, c, d, e) {
            if ( !! a && a.nodeType !== 3 && a.nodeType !== 8 && !!a.style) {
                var g, h, i = f.camelCase(c),
                j = a.style,
                k = f.cssHooks[i];
                c = f.cssProps[i] || i;
                if (d === b) {
                    if (k && "get" in k && (g = k.get(a, !1, e)) !== b) return g;
                    return j[c]
                }
                h = typeof d,
                h === "string" && (g = bu.exec(d)) && (d = +(g[1] + 1) * +g[2] + parseFloat(f.css(a, c)), h = "number");
                if (d == null || h === "number" && isNaN(d)) return;
                h === "number" && !f.cssNumber[i] && (d += "px");
                if (!k || !("set" in k) || (d = k.set(a, d)) !== b) try {
                    j[c] = d
                } catch(l) {}
            }
        },
        css: function(a, c, d) {
            var e, g;
            c = f.camelCase(c),
            g = f.cssHooks[c],
            c = f.cssProps[c] || c,
            c === "cssFloat" && (c = "float");
            if (g && "get" in g && (e = g.get(a, !0, d)) !== b) return e;
            if (by) return by(a, c)
        },
        swap: function(a, b, c) {
            var d = {},
            e, f;
            for (f in b) d[f] = a.style[f],
            a.style[f] = b[f];
            e = c.call(a);
            for (f in b) a.style[f] = d[f];
            return e
        }
    }),
    f.curCSS = f.css,
    c.defaultView && c.defaultView.getComputedStyle && (bz = function(a, b) {
        var c, d, e, g, h = a.style;
        b = b.replace(br, "-$1").toLowerCase(),
        (d = a.ownerDocument.defaultView) && (e = d.getComputedStyle(a, null)) && (c = e.getPropertyValue(b), c === "" && !f.contains(a.ownerDocument.documentElement, a) && (c = f.style(a, b))),
        !f.support.pixelMargin && e && bv.test(b) && bt.test(c) && (g = h.width, h.width = c, c = e.width, h.width = g);
        return c
    }),
    c.documentElement.currentStyle && (bA = function(a, b) {
        var c, d, e, f = a.currentStyle && a.currentStyle[b],
        g = a.style;
        f == null && g && (e = g[b]) && (f = e),
        bt.test(f) && (c = g.left, d = a.runtimeStyle && a.runtimeStyle.left, d && (a.runtimeStyle.left = a.currentStyle.left), g.left = b === "fontSize" ? "1em": f, f = g.pixelLeft + "px", g.left = c, d && (a.runtimeStyle.left = d));
        return f === "" ? "auto": f
    }),
    by = bz || bA,
    f.each(["height", "width"],
    function(a, b) {
        f.cssHooks[b] = {
            get: function(a, c, d) {
                if (c) return a.offsetWidth !== 0 ? bB(a, b, d) : f.swap(a, bw,
                function() {
                    return bB(a, b, d)
                })
            },
            set: function(a, b) {
                return bs.test(b) ? b + "px": b
            }
        }
    }),
    f.support.opacity || (f.cssHooks.opacity = {
        get: function(a, b) {
            return bq.test((b && a.currentStyle ? a.currentStyle.filter: a.style.filter) || "") ? parseFloat(RegExp.$1) / 100 + "": b ? "1": ""
        },
        set: function(a, b) {
            var c = a.style,
            d = a.currentStyle,
            e = f.isNumeric(b) ? "alpha(opacity=" + b * 100 + ")": "",
            g = d && d.filter || c.filter || "";
            c.zoom = 1;
            if (b >= 1 && f.trim(g.replace(bp, "")) === "") {
                c.removeAttribute("filter");
                if (d && !d.filter) return
            }
            c.filter = bp.test(g) ? g.replace(bp, e) : g + " " + e
        }
    }),
    f(function() {
        f.support.reliableMarginRight || (f.cssHooks.marginRight = {
            get: function(a, b) {
                return f.swap(a, {
                    display: "inline-block"
                },
                function() {
                    return b ? by(a, "margin-right") : a.style.marginRight
                })
            }
        })
    }),
    f.expr && f.expr.filters && (f.expr.filters.hidden = function(a) {
        var b = a.offsetWidth,
        c = a.offsetHeight;
        return b === 0 && c === 0 || !f.support.reliableHiddenOffsets && (a.style && a.style.display || f.css(a, "display")) === "none"
    },
    f.expr.filters.visible = function(a) {
        return ! f.expr.filters.hidden(a)
    }),
    f.each({
        margin: "",
        padding: "",
        border: "Width"
    },
    function(a, b) {
        f.cssHooks[a + b] = {
            expand: function(c) {
                var d, e = typeof c == "string" ? c.split(" ") : [c],
                f = {};
                for (d = 0; d < 4; d++) f[a + bx[d] + b] = e[d] || e[d - 2] || e[0];
                return f
            }
        }
    });
    var bC = /%20/g,
    bD = /\[\]$/,
    bE = /\r?\n/g,
    bF = /#.*$/,
    bG = /^(.*?):[ \t]*([^\r\n]*)\r?$/mg,
    bH = /^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,
    bI = /^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,
    bJ = /^(?:GET|HEAD)$/,
    bK = /^\/\//,
    bL = /\?/,
    bM = /<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,
    bN = /^(?:select|textarea)/i,
    bO = /\s+/,
    bP = /([?&])_=[^&]*/,
    bQ = /^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,
    bR = f.fn.load,
    bS = {},
    bT = {},
    bU, bV, bW = ["*/"] + ["*"];
    try {
        bU = e.href
    } catch(bX) {
        bU = c.createElement("a"),
        bU.href = "",
        bU = bU.href
    }
    bV = bQ.exec(bU.toLowerCase()) || [],
    f.fn.extend({
        load: function(a, c, d) {
            if (typeof a != "string" && bR) return bR.apply(this, arguments);
            if (!this.length) return this;
            var e = a.indexOf(" ");
            if (e >= 0) {
                var g = a.slice(e, a.length);
                a = a.slice(0, e)
            }
            var h = "GET";
            c && (f.isFunction(c) ? (d = c, c = b) : typeof c == "object" && (c = f.param(c, f.ajaxSettings.traditional), h = "POST"));
            var i = this;
            f.ajax({
                url: a,
                type: h,
                dataType: "html",
                data: c,
                complete: function(a, b, c) {
                    c = a.responseText,
                    a.isResolved() && (a.done(function(a) {
                        c = a
                    }), i.html(g ? f("<div>").append(c.replace(bM, "")).find(g) : c)),
                    d && i.each(d, [c, b, a])
                }
            });
            return this
        },
        serialize: function() {
            return f.param(this.serializeArray())
        },
        serializeArray: function() {
            return this.map(function() {
                return this.elements ? f.makeArray(this.elements) : this
            }).filter(function() {
                return this.name && !this.disabled && (this.checked || bN.test(this.nodeName) || bH.test(this.type))
            }).map(function(a, b) {
                var c = f(this).val();
                return c == null ? null: f.isArray(c) ? f.map(c,
                function(a, c) {
                    return {
                        name: b.name,
                        value: a.replace(bE, "\r\n")
                    }
                }) : {
                    name: b.name,
                    value: c.replace(bE, "\r\n")
                }
            }).get()
        }
    }),
    f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),
    function(a, b) {
        f.fn[b] = function(a) {
            return this.on(b, a)
        }
    }),
    f.each(["get", "post"],
    function(a, c) {
        f[c] = function(a, d, e, g) {
            f.isFunction(d) && (g = g || e, e = d, d = b);
            return f.ajax({
                type: c,
                url: a,
                data: d,
                success: e,
                dataType: g
            })
        }
    }),
    f.extend({
        getScript: function(a, c) {
            return f.get(a, b, c, "script")
        },
        getJSON: function(a, b, c) {
            return f.get(a, b, c, "json")
        },
        ajaxSetup: function(a, b) {
            b ? b$(a, f.ajaxSettings) : (b = a, a = f.ajaxSettings),
            b$(a, b);
            return a
        },
        ajaxSettings: {
            url: bU,
            isLocal: bI.test(bV[1]),
            global: !0,
            type: "GET",
            contentType: "application/x-www-form-urlencoded; charset=UTF-8",
            processData: !0,
            async: !0,
            accepts: {
                xml: "application/xml, text/xml",
                html: "text/html",
                text: "text/plain",
                json: "application/json, text/javascript",
                "*": bW
            },
            contents: {
                xml: /xml/,
                html: /html/,
                json: /json/
            },
            responseFields: {
                xml: "responseXML",
                text: "responseText"
            },
            converters: {
                "* text": a.String,
                "text html": !0,
                "text json": f.parseJSON,
                "text xml": f.parseXML
            },
            flatOptions: {
                context: !0,
                url: !0
            }
        },
        ajaxPrefilter: bY(bS),
        ajaxTransport: bY(bT),
        ajax: function(a, c) {
            function w(a, c, l, m) {
                if (s !== 2) {
                    s = 2,
                    q && clearTimeout(q),
                    p = b,
                    n = m || "",
                    v.readyState = a > 0 ? 4 : 0;
                    var o, r, u, w = c,
                    x = l ? ca(d, v, l) : b,
                    y,
                    z;
                    if (a >= 200 && a < 300 || a === 304) {
                        if (d.ifModified) {
                            if (y = v.getResponseHeader("Last-Modified")) f.lastModified[k] = y;
                            if (z = v.getResponseHeader("Etag")) f.etag[k] = z
                        }
                        if (a === 304) w = "notmodified",
                        o = !0;
                        else try {
                            r = cb(d, x),
                            w = "success",
                            o = !0
                        } catch(A) {
                            w = "parsererror",
                            u = A
                        }
                    } else {
                        u = w;
                        if (!w || a) w = "error",
                        a < 0 && (a = 0)
                    }
                    v.status = a,
                    v.statusText = "" + (c || w),
                    o ? h.resolveWith(e, [r, w, v]) : h.rejectWith(e, [v, w, u]),
                    v.statusCode(j),
                    j = b,
                    t && g.trigger("ajax" + (o ? "Success": "Error"), [v, d, o ? r: u]),
                    i.fireWith(e, [v, w]),
                    t && (g.trigger("ajaxComplete", [v, d]), --f.active || f.event.trigger("ajaxStop"))
                }
            }
            typeof a == "object" && (c = a, a = b),
            c = c || {};
            var d = f.ajaxSetup({},
            c),
            e = d.context || d,
            g = e !== d && (e.nodeType || e instanceof f) ? f(e) : f.event,
            h = f.Deferred(),
            i = f.Callbacks("once memory"),
            j = d.statusCode || {},
            k,
            l = {},
            m = {},
            n,
            o,
            p,
            q,
            r,
            s = 0,
            t,
            u,
            v = {
                readyState: 0,
                setRequestHeader: function(a, b) {
                    if (!s) {
                        var c = a.toLowerCase();
                        a = m[c] = m[c] || a,
                        l[a] = b
                    }
                    return this
                },
                getAllResponseHeaders: function() {
                    return s === 2 ? n: null
                },
                getResponseHeader: function(a) {
                    var c;
                    if (s === 2) {
                        if (!o) {
                            o = {};
                            while (c = bG.exec(n)) o[c[1].toLowerCase()] = c[2]
                        }
                        c = o[a.toLowerCase()]
                    }
                    return c === b ? null: c
                },
                overrideMimeType: function(a) {
                    s || (d.mimeType = a);
                    return this
                },
                abort: function(a) {
                    a = a || "abort",
                    p && p.abort(a),
                    w(0, a);
                    return this
                }
            };
            h.promise(v),
            v.success = v.done,
            v.error = v.fail,
            v.complete = i.add,
            v.statusCode = function(a) {
                if (a) {
                    var b;
                    if (s < 2) for (b in a) j[b] = [j[b], a[b]];
                    else b = a[v.status],
                    v.then(b, b)
                }
                return this
            },
            d.url = ((a || d.url) + "").replace(bF, "").replace(bK, bV[1] + "//"),
            d.dataTypes = f.trim(d.dataType || "*").toLowerCase().split(bO),
            d.crossDomain == null && (r = bQ.exec(d.url.toLowerCase()), d.crossDomain = !(!r || r[1] == bV[1] && r[2] == bV[2] && (r[3] || (r[1] === "http:" ? 80 : 443)) == (bV[3] || (bV[1] === "http:" ? 80 : 443)))),
            d.data && d.processData && typeof d.data != "string" && (d.data = f.param(d.data, d.traditional)),
            bZ(bS, d, c, v);
            if (s === 2) return ! 1;
            t = d.global,
            d.type = d.type.toUpperCase(),
            d.hasContent = !bJ.test(d.type),
            t && f.active++===0 && f.event.trigger("ajaxStart");
            if (!d.hasContent) {
                d.data && (d.url += (bL.test(d.url) ? "&": "?") + d.data, delete d.data),
                k = d.url;
                if (d.cache === !1) {
                    var x = f.now(),
                    y = d.url.replace(bP, "$1_=" + x);
                    d.url = y + (y === d.url ? (bL.test(d.url) ? "&": "?") + "_=" + x: "")
                }
            } (d.data && d.hasContent && d.contentType !== !1 || c.contentType) && v.setRequestHeader("Content-Type", d.contentType),
            d.ifModified && (k = k || d.url, f.lastModified[k] && v.setRequestHeader("If-Modified-Since", f.lastModified[k]), f.etag[k] && v.setRequestHeader("If-None-Match", f.etag[k])),
            v.setRequestHeader("Accept", d.dataTypes[0] && d.accepts[d.dataTypes[0]] ? d.accepts[d.dataTypes[0]] + (d.dataTypes[0] !== "*" ? ", " + bW + "; q=0.01": "") : d.accepts["*"]);
            for (u in d.headers) v.setRequestHeader(u, d.headers[u]);
            if (d.beforeSend && (d.beforeSend.call(e, v, d) === !1 || s === 2)) {
                v.abort();
                return ! 1
            }
            for (u in {
                success: 1,
                error: 1,
                complete: 1
            }) v[u](d[u]);
            p = bZ(bT, d, c, v);
            if (!p) w( - 1, "No Transport");
            else {
                v.readyState = 1,
                t && g.trigger("ajaxSend", [v, d]),
                d.async && d.timeout > 0 && (q = setTimeout(function() {
                    v.abort("timeout")
                },
                d.timeout));
                try {
                    s = 1,
                    p.send(l, w)
                } catch(z) {
                    if (s < 2) w( - 1, z);
                    else throw z
                }
            }
            return v
        },
        param: function(a, c) {
            var d = [],
            e = function(a, b) {
                b = f.isFunction(b) ? b() : b,
                d[d.length] = encodeURIComponent(a) + "=" + encodeURIComponent(b)
            };
            c === b && (c = f.ajaxSettings.traditional);
            if (f.isArray(a) || a.jquery && !f.isPlainObject(a)) f.each(a,
            function() {
                e(this.name, this.value)
            });
            else for (var g in a) b_(g, a[g], c, e);
            return d.join("&").replace(bC, "+")
        }
    }),
    f.extend({
        active: 0,
        lastModified: {},
        etag: {}
    });
    var cc = f.now(),
    cd = /(\=)\?(&|$)|\?\?/i;
    f.ajaxSetup({
        jsonp: "callback",
        jsonpCallback: function() {
            return f.expando + "_" + cc++
        }
    }),
    f.ajaxPrefilter("json jsonp",
    function(b, c, d) {
        var e = typeof b.data == "string" && /^application\/x\-www\-form\-urlencoded/.test(b.contentType);
        if (b.dataTypes[0] === "jsonp" || b.jsonp !== !1 && (cd.test(b.url) || e && cd.test(b.data))) {
            var g, h = b.jsonpCallback = f.isFunction(b.jsonpCallback) ? b.jsonpCallback() : b.jsonpCallback,
            i = a[h],
            j = b.url,
            k = b.data,
            l = "$1" + h + "$2";
            b.jsonp !== !1 && (j = j.replace(cd, l), b.url === j && (e && (k = k.replace(cd, l)), b.data === k && (j += (/\?/.test(j) ? "&": "?") + b.jsonp + "=" + h))),
            b.url = j,
            b.data = k,
            a[h] = function(a) {
                g = [a]
            },
            d.always(function() {
                a[h] = i,
                g && f.isFunction(i) && a[h](g[0])
            }),
            b.converters["script json"] = function() {
                g || f.error(h + " was not called");
                return g[0]
            },
            b.dataTypes[0] = "json";
            return "script"
        }
    }),
    f.ajaxSetup({
        accepts: {
            script: "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"
        },
        contents: {
            script: /javascript|ecmascript/
        },
        converters: {
            "text script": function(a) {
                f.globalEval(a);
                return a
            }
        }
    }),
    f.ajaxPrefilter("script",
    function(a) {
        a.cache === b && (a.cache = !1),
        a.crossDomain && (a.type = "GET", a.global = !1)
    }),
    f.ajaxTransport("script",
    function(a) {
        if (a.crossDomain) {
            var d, e = c.head || c.getElementsByTagName("head")[0] || c.documentElement;
            return {
                send: function(f, g) {
                    d = c.createElement("script"),
                    d.async = "async",
                    a.scriptCharset && (d.charset = a.scriptCharset),
                    d.src = a.url,
                    d.onload = d.onreadystatechange = function(a, c) {
                        if (c || !d.readyState || /loaded|complete/.test(d.readyState)) d.onload = d.onreadystatechange = null,
                        e && d.parentNode && e.removeChild(d),
                        d = b,
                        c || g(200, "success")
                    },
                    e.insertBefore(d, e.firstChild)
                },
                abort: function() {
                    d && d.onload(0, 1)
                }
            }
        }
    });
    var ce = a.ActiveXObject ?
    function() {
        for (var a in cg) cg[a](0, 1)
    }: !1,
    cf = 0,
    cg;
    f.ajaxSettings.xhr = a.ActiveXObject ?
    function() {
        return ! this.isLocal && ch() || ci()
    }: ch,
    function(a) {
        f.extend(f.support, {
            ajax: !!a,
            cors: !!a && "withCredentials" in a
        })
    } (f.ajaxSettings.xhr()),
    f.support.ajax && f.ajaxTransport(function(c) {
        if (!c.crossDomain || f.support.cors) {
            var d;
            return {
                send: function(e, g) {
                    var h = c.xhr(),
                    i,
                    j;
                    c.username ? h.open(c.type, c.url, c.async, c.username, c.password) : h.open(c.type, c.url, c.async);
                    if (c.xhrFields) for (j in c.xhrFields) h[j] = c.xhrFields[j];
                    c.mimeType && h.overrideMimeType && h.overrideMimeType(c.mimeType),
                    !c.crossDomain && !e["X-Requested-With"] && (e["X-Requested-With"] = "XMLHttpRequest");
                    try {
                        for (j in e) h.setRequestHeader(j, e[j])
                    } catch(k) {}
                    h.send(c.hasContent && c.data || null),
                    d = function(a, e) {
                        var j, k, l, m, n;
                        try {
                            if (d && (e || h.readyState === 4)) {
                                d = b,
                                i && (h.onreadystatechange = f.noop, ce && delete cg[i]);
                                if (e) h.readyState !== 4 && h.abort();
                                else {
                                    j = h.status,
                                    l = h.getAllResponseHeaders(),
                                    m = {},
                                    n = h.responseXML,
                                    n && n.documentElement && (m.xml = n);
                                    try {
                                        m.text = h.responseText
                                    } catch(a) {}
                                    try {
                                        k = h.statusText
                                    } catch(o) {
                                        k = ""
                                    } ! j && c.isLocal && !c.crossDomain ? j = m.text ? 200 : 404 : j === 1223 && (j = 204)
                                }
                            }
                        } catch(p) {
                            e || g( - 1, p)
                        }
                        m && g(j, k, m, l)
                    },
                    !c.async || h.readyState === 4 ? d() : (i = ++cf, ce && (cg || (cg = {},
                    f(a).unload(ce)), cg[i] = d), h.onreadystatechange = d)
                },
                abort: function() {
                    d && d(0, 1)
                }
            }
        }
    });
    var cj = {},
    ck, cl, cm = /^(?:toggle|show|hide)$/,
    cn = /^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,
    co, cp = [["height", "marginTop", "marginBottom", "paddingTop", "paddingBottom"], ["width", "marginLeft", "marginRight", "paddingLeft", "paddingRight"], ["opacity"]],
    cq;
    f.fn.extend({
        show: function(a, b, c) {
            var d, e;
            if (a || a === 0) return this.animate(ct("show", 3), a, b, c);
            for (var g = 0,
            h = this.length; g < h; g++) d = this[g],
            d.style && (e = d.style.display, !f.cA(d, "olddisplay") && e === "none" && (e = d.style.display = ""), (e === "" && f.css(d, "display") === "none" || !f.contains(d.ownerDocument.documentElement, d)) && f.cA(d, "olddisplay", cu(d.nodeName)));
            for (g = 0; g < h; g++) {
                d = this[g];
                if (d.style) {
                    e = d.style.display;
                    if (e === "" || e === "none") d.style.display = f.cA(d, "olddisplay") || ""
                }
            }
            return this
        },
        hide: function(a, b, c) {
            if (a || a === 0) return this.animate(ct("hide", 3), a, b, c);
            var d, e, g = 0,
            h = this.length;
            for (; g < h; g++) d = this[g],
            d.style && (e = f.css(d, "display"), e !== "none" && !f.cA(d, "olddisplay") && f.cA(d, "olddisplay", e));
            for (g = 0; g < h; g++) this[g].style && (this[g].style.display = "none");
            return this
        },
        pT: f.fn.toggle,
        toggle: function(a, b, c) {
            var d = typeof a == "boolean";
            f.isFunction(a) && f.isFunction(b) ? this.pT.apply(this, arguments) : a == null || d ? this.each(function() {
                var b = d ? a: f(this).is(":hidden");
                f(this)[b ? "show": "hide"]()
            }) : this.animate(ct("toggle", 3), a, b, c);
            return this
        },
        fadeTo: function(a, b, c, d) {
            return this.filter(":hidden").css("opacity", 0).show().end().animate({
                opacity: b
            },
            a, c, d)
        },
        animate: function(a, b, c, d) {
            function g() {
                e.queue === !1 && f.pZ(this);
                var b = f.extend({},
                e),
                c = this.nodeType === 1,
                d = c && f(this).is(":hidden"),
                g,
                h,
                i,
                j,
                k,
                l,
                m,
                n,
                o,
                p,
                q;
                b.animatedProperties = {};
                for (i in a) {
                    g = f.camelCase(i),
                    i !== g && (a[g] = a[i], delete a[i]);
                    if ((k = f.cssHooks[g]) && "expand" in k) {
                        l = k.expand(a[g]),
                        delete a[g];
                        for (i in l) i in a || (a[i] = l[i])
                    }
                }
                for (g in a) {
                    h = a[g],
                    f.isArray(h) ? (b.animatedProperties[g] = h[1], h = a[g] = h[0]) : b.animatedProperties[g] = b.specialEasing && b.specialEasing[g] || b.easing || "swing";
                    if (h === "hide" && d || h === "show" && !d) return b.complete.call(this);
                    c && (g === "height" || g === "width") && (b.overflow = [this.style.overflow, this.style.overflowX, this.style.overflowY], f.css(this, "display") === "inline" && f.css(this, "float") === "none" && (!f.support.inlineBlockNeedsLayout || cu(this.nodeName) === "inline" ? this.style.display = "inline-block": this.style.zoom = 1))
                }
                b.overflow != null && (this.style.overflow = "hidden");
                for (i in a) j = new f.fx(this, b, i),
                h = a[i],
                cm.test(h) ? (q = f.cA(this, "toggle" + i) || (h === "toggle" ? d ? "show": "hide": 0), q ? (f.cA(this, "toggle" + i, q === "show" ? "hide": "show"), j[q]()) : j[h]()) : (m = cn.exec(h), n = j.cur(), m ? (o = parseFloat(m[2]), p = m[3] || (f.cssNumber[i] ? "": "px"), p !== "px" && (f.style(this, i, (o || 1) + p), n = (o || 1) / j.cur() * n, f.style(this, i, n + p)), m[1] && (o = (m[1] === "-=" ? -1 : 1) * o + n), j.custom(n, o, p)) : j.custom(n, h, ""));
                return ! 0
            }
            var e = f.speed(b, c, d);
            if (f.isEmptyObject(a)) return this.each(e.complete, [!1]);
            a = f.extend({},
            a);
            return e.queue === !1 ? this.each(g) : this.queue(e.queue, g)
        },
        stop: function(a, c, d) {
            typeof a != "string" && (d = c, c = a, a = b),
            c && a !== !1 && this.queue(a || "fx", []);
            return this.each(function() {
                function h(a, b, c) {
                    var e = b[c];
                    f.removeData(a, c, !0),
                    e.stop(d)
                }
                var b, c = !1,
                e = f.timers,
                g = f.cA(this);
                d || f.nc(!0, this);
                if (a == null) for (b in g) g[b] && g[b].stop && b.indexOf(".run") === b.length - 4 && h(this, g, b);
                else g[b = a + ".run"] && g[b].stop && h(this, g, b);
                for (b = e.length; b--;) e[b].elem === this && (a == null || e[b].queue === a) && (d ? e[b](!0) : e[b].saveState(), c = !0, e.splice(b, 1)); (!d || !c) && f.dequeue(this, a)
            })
        }
    }),
    f.each({
        slideDown: ct("show", 1),
        slideUp: ct("hide", 1),
        slideToggle: ct("toggle", 1),
        fadeIn: {
            opacity: "show"
        },
        fadeOut: {
            opacity: "hide"
        },
        fadeToggle: {
            opacity: "toggle"
        }
    },
    function(a, b) {
        f.fn[a] = function(a, c, d) {
            return this.animate(b, a, c, d)
        }
    }),
    f.extend({
        speed: function(a, b, c) {
            var d = a && typeof a == "object" ? f.extend({},
            a) : {
                complete: c || !c && b || f.isFunction(a) && a,
                duration: a,
                easing: c && b || b && !f.isFunction(b) && b
            };
            d.duration = f.fx.off ? 0 : typeof d.duration == "number" ? d.duration: d.duration in f.fx.speeds ? f.fx.speeds[d.duration] : f.fx.speeds.fd;
            if (d.queue == null || d.queue === !0) d.queue = "fx";
            d.old = d.complete,
            d.complete = function(a) {
                f.isFunction(d.old) && d.old.call(this),
                d.queue ? f.dequeue(this, d.queue) : a !== !1 && f.nc(this)
            };
            return d
        },
        easing: {
            linear: function(a) {
                return a
            },
            swing: function(a) {
                return - Math.cos(a * Math.PI) / 2 + .5
            }
        },
        timers: [],
        fx: function(a, b, c) {
            this.options = b,
            this.elem = a,
            this.prop = c,
            b.orig = b.orig || {}
        }
    }),
    f.fx.prototype = {
        update: function() {
            this.options.step && this.options.step.call(this.elem, this.now, this),
            (f.fx.step[this.prop] || f.fx.step.fd)(this)
        },
        cur: function() {
            if (this.elem[this.prop] != null && (!this.elem.style || this.elem.style[this.prop] == null)) return this.elem[this.prop];
            var a, b = f.css(this.elem, this.prop);
            return isNaN(a = parseFloat(b)) ? !b || b === "auto" ? 0 : b: a
        },
        custom: function(a, c, d) {
            function h(a) {
                return e.step(a)
            }
            var e = this,
            g = f.fx;
            this.startTime = cq || cr(),
            this.end = c,
            this.now = this.start = a,
            this.pos = this.state = 0,
            this.unit = d || this.unit || (f.cssNumber[this.prop] ? "": "px"),
            h.queue = this.options.queue,
            h.elem = this.elem,
            h.saveState = function() {
                f.cA(e.elem, "fxshow" + e.prop) === b && (e.options.hide ? f.cA(e.elem, "fxshow" + e.prop, e.start) : e.options.show && f.cA(e.elem, "fxshow" + e.prop, e.end))
            },
            h() && f.timers.push(h) && !co && (co = setInterval(g.tick, g.interval))
        },
        show: function() {
            var a = f.cA(this.elem, "fxshow" + this.prop);
            this.options.orig[this.prop] = a || f.style(this.elem, this.prop),
            this.options.show = !0,
            a !== b ? this.custom(this.cur(), a) : this.custom(this.prop === "width" || this.prop === "height" ? 1 : 0, this.cur()),
            f(this.elem).show()
        },
        hide: function() {
            this.options.orig[this.prop] = f.cA(this.elem, "fxshow" + this.prop) || f.style(this.elem, this.prop),
            this.options.hide = !0,
            this.custom(this.cur(), 0)
        },
        step: function(a) {
            var b, c, d, e = cq || cr(),
            g = !0,
            h = this.elem,
            i = this.options;
            if (a || e >= i.duration + this.startTime) {
                this.now = this.end,
                this.pos = this.state = 1,
                this.update(),
                i.animatedProperties[this.prop] = !0;
                for (b in i.animatedProperties) i.animatedProperties[b] !== !0 && (g = !1);
                if (g) {
                    i.overflow != null && !f.support.shrinkWrapBlocks && f.each(["", "X", "Y"],
                    function(a, b) {
                        h.style["overflow" + b] = i.overflow[a]
                    }),
                    i.hide && f(h).hide();
                    if (i.hide || i.show) for (b in i.animatedProperties) f.style(h, b, i.orig[b]),
                    f.removeData(h, "fxshow" + b, !0),
                    f.removeData(h, "toggle" + b, !0);
                    d = i.complete,
                    d && (i.complete = !1, d.call(h))
                }
                return ! 1
            }
            i.duration == Infinity ? this.now = e: (c = e - this.startTime, this.state = c / i.duration, this.pos = f.easing[i.animatedProperties[this.prop]](this.state, c, 0, 1, i.duration), this.now = this.start + (this.end - this.start) * this.pos),
            this.update();
            return ! 0
        }
    },
    f.extend(f.fx, {
        tick: function() {
            var a, b = f.timers,
            c = 0;
            for (; c < b.length; c++) a = b[c],
            !a() && b[c] === a && b.splice(c--, 1);
            b.length || f.fx.stop()
        },
        interval: 13,
        stop: function() {
            clearInterval(co),
            co = null
        },
        speeds: {
            slow: 600,
            fast: 200,
            fd: 400
        },
        step: {
            opacity: function(a) {
                f.style(a.elem, "opacity", a.now)
            },
            fd: function(a) {
                a.elem.style && a.elem.style[a.prop] != null ? a.elem.style[a.prop] = a.now + a.unit: a.elem[a.prop] = a.now
            }
        }
    }),
    f.each(cp.concat.apply([], cp),
    function(a, b) {
        b.indexOf("margin") && (f.fx.step[b] = function(a) {
            f.style(a.elem, b, Math.max(0, a.now) + a.unit)
        })
    }),
    f.expr && f.expr.filters && (f.expr.filters.animated = function(a) {
        return f.grep(f.timers,
        function(b) {
            return a === b.elem
        }).length
    });
    var cv, cw = /^t(?:able|d|h)$/i,
    cx = /^(?:body|html)$/i;
    "getBoundingClientRect" in c.documentElement ? cv = function(a, b, c, d) {
        try {
            d = a.getBoundingClientRect()
        } catch(e) {}
        if (!d || !f.contains(c, a)) return d ? {
            top: d.top,
            left: d.left
        }: {
            top: 0,
            left: 0
        };
        var g = b.body,
        h = cy(b),
        i = c.clientTop || g.clientTop || 0,
        j = c.clientLeft || g.clientLeft || 0,
        k = h.pageYOffset || f.support.boxModel && c.scrollTop || g.scrollTop,
        l = h.pageXOffset || f.support.boxModel && c.scrollLeft || g.scrollLeft,
        m = d.top + k - i,
        n = d.left + l - j;
        return {
            top: m,
            left: n
        }
    }: cv = function(a, b, c) {
        var d, e = a.offsetParent,
        g = a,
        h = b.body,
        i = b.defaultView,
        j = i ? i.getComputedStyle(a, null) : a.currentStyle,
        k = a.offsetTop,
        l = a.offsetLeft;
        while ((a = a.parentNode) && a !== h && a !== c) {
            if (f.support.fixedPosition && j.position === "fixed") break;
            d = i ? i.getComputedStyle(a, null) : a.currentStyle,
            k -= a.scrollTop,
            l -= a.scrollLeft,
            a === e && (k += a.offsetTop, l += a.offsetLeft, f.support.doesNotAddBorder && (!f.support.doesAddBorderForTableAndCells || !cw.test(a.nodeName)) && (k += parseFloat(d.borderTopWidth) || 0, l += parseFloat(d.borderLeftWidth) || 0), g = e, e = a.offsetParent),
            f.support.subtractsBorderForOverflowNotVisible && d.overflow !== "visible" && (k += parseFloat(d.borderTopWidth) || 0, l += parseFloat(d.borderLeftWidth) || 0),
            j = d
        }
        if (j.position === "relative" || j.position === "static") k += h.offsetTop,
        l += h.offsetLeft;
        f.support.fixedPosition && j.position === "fixed" && (k += Math.max(c.scrollTop, h.scrollTop), l += Math.max(c.scrollLeft, h.scrollLeft));
        return {
            top: k,
            left: l
        }
    },
    f.fn.offset = function(a) {
        if (arguments.length) return a === b ? this: this.each(function(b) {
            f.offset.setOffset(this, a, b)
        });
        var c = this[0],
        d = c && c.ownerDocument;
        if (!d) return null;
        if (c === d.body) return f.offset.bodyOffset(c);
        return cv(c, d, d.documentElement)
    },
    f.offset = {
        bodyOffset: function(a) {
            var b = a.offsetTop,
            c = a.offsetLeft;
            f.support.doesNotIncludeMarginInBodyOffset && (b += parseFloat(f.css(a, "marginTop")) || 0, c += parseFloat(f.css(a, "marginLeft")) || 0);
            return {
                top: b,
                left: c
            }
        },
        setOffset: function(a, b, c) {
            var d = f.css(a, "position");
            d === "static" && (a.style.position = "relative");
            var e = f(a),
            g = e.offset(),
            h = f.css(a, "top"),
            i = f.css(a, "left"),
            j = (d === "absolute" || d === "fixed") && f.inArray("auto", [h, i]) > -1,
            k = {},
            l = {},
            m,
            n;
            j ? (l = e.position(), m = l.top, n = l.left) : (m = parseFloat(h) || 0, n = parseFloat(i) || 0),
            f.isFunction(b) && (b = b.call(a, c, g)),
            b.top != null && (k.top = b.top - g.top + m),
            b.left != null && (k.left = b.left - g.left + n),
            "using" in b ? b.using.call(a, k) : e.css(k)
        }
    },
    f.fn.extend({
        position: function() {
            if (!this[0]) return null;
            var a = this[0],
            b = this.offsetParent(),
            c = this.offset(),
            d = cx.test(b[0].nodeName) ? {
                top: 0,
                left: 0
            }: b.offset();
            c.top -= parseFloat(f.css(a, "marginTop")) || 0,
            c.left -= parseFloat(f.css(a, "marginLeft")) || 0,
            d.top += parseFloat(f.css(b[0], "borderTopWidth")) || 0,
            d.left += parseFloat(f.css(b[0], "borderLeftWidth")) || 0;
            return {
                top: c.top - d.top,
                left: c.left - d.left
            }
        },
        offsetParent: function() {
            return this.map(function() {
                var a = this.offsetParent || c.body;
                while (a && !cx.test(a.nodeName) && f.css(a, "position") === "static") a = a.offsetParent;
                return a
            })
        }
    }),
    f.each({
        scrollLeft: "pageXOffset",
        scrollTop: "pageYOffset"
    },
    function(a, c) {
        var d = /Y/.test(c);
        f.fn[a] = function(e) {
            return f.access(this,
            function(a, e, g) {
                var h = cy(a);
                if (g === b) return h ? c in h ? h[c] : f.support.boxModel && h.document.documentElement[e] || h.document.body[e] : a[e];
                h ? h.scrollTo(d ? f(h).scrollLeft() : g, d ? g: f(h).scrollTop()) : a[e] = g
            },
            a, e, arguments.length, null)
        }
    }),
    f.each({
        Height: "height",
        Width: "width"
    },
    function(a, c) {
        var d = "client" + a,
        e = "scroll" + a,
        g = "offset" + a;
        f.fn["inner" + a] = function() {
            var a = this[0];
            return a ? a.style ? parseFloat(f.css(a, c, "padding")) : this[c]() : null
        },
        f.fn["outer" + a] = function(a) {
            var b = this[0];
            return b ? b.style ? parseFloat(f.css(b, c, a ? "margin": "border")) : this[c]() : null
        },
        f.fn[c] = function(a) {
            return f.access(this,
            function(a, c, h) {
                var i, j, k, l;
                if (f.isWindow(a)) {
                    i = a.document,
                    j = i.documentElement[d];
                    return f.support.boxModel && j || i.body && i.body[d] || j
                }
                if (a.nodeType === 9) {
                    i = a.documentElement;
                    if (i[d] >= i[e]) return i[d];
                    return Math.max(a.body[e], i[e], a.body[g], i[g])
                }
                if (h === b) {
                    k = f.css(a, c),
                    l = parseFloat(k);
                    return f.isNumeric(l) ? l: k
                }
                f(a).css(c, h)
            },
            c, a, arguments.length, null)
        }
    }),
    a.jQuery = a.$ = f,
    typeof define == "function" && define.amd && define.amd.jQuery && define("jquery", [],
    function() {
        return f
    })
})(window); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("nej.ut"),
    yut = NEJ.P("yxp.ut"),
    cH = null;
    yut.FU = NEJ.C();
    cH = yut.FU.dy(p.et, !0);
    cH.dD = function(cz) {
        this.CH(cz);
        this.dX(cz)
    };
    cH.dX = function(cz) {
        var GU = "请输入邮箱地址",
        jL = $("#weekly-sub .email"),
        oR = $("#weekly-sub .sub");
        jL.val(GU);
        jL.one("focus",
        function() {
            $(this).css({
                color: "#333"
            }).val("")
        });
        oR.click(function() {
            if (jL.val().match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/)) {
                $.post("/ajax.do?action=subscribeWeekly", {
                    email: jL.val()
                },
                function(data) {
                    if (data.result && data.result == 1) {
                        alert("感谢您订阅印像微可粒")
                    } else if (data.result && data.result == 2) {
                        alert("您已经订阅过印像微可粒")
                    } else {
                        alert("订阅服务出错")
                    }
                })
            } else {
                alert("请输入正确的邮箱地址")
            }
        })
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    jn = pW("nej.v"),
    il = pW("nej.ut"),
    vD;
    il.fU = NEJ.C();
    vD = il.fU.dy(il.et);
    vD.dD = function(cz) {
        this.CH(cz);
        this.wt = cz.event || "click";
        this.Ae = cz.selected || "js-selected";
        this.fG = cz.disabled || "";
        this.ku = !!cz.inverse;
        this.EN(cz.list);
        this.fy(cz.index || 0)
    };
    vD.eF = function() {
        var EM = function(cQ) {
            this.DE(cQ, !1)
        };
        return function() {
            this.CI();
            zB.rv(this.dA, EM, this);
            delete this.dA;
            delete this.wt;
            delete this.dF;
            delete this.fG;
            delete this.Ae;
            delete this.ku
        }
    } ();
    vD.EN = function() {
        var DF = function(ek) {
            if (!ek) return;
            this.dA.push(ek);
            var cX = this.dA.length - 1,
            zX = this.Au[cX];
            if (!zX) {
                zX = this.fy.cC(this, cX);
                this.Au[cX] = zX
            }
            this.wl([[ek, this.wt, zX]])
        };
        return function(cB) {
            this.dA = [];
            if (!this.Au) this.Au = [];
            zB.rv(cB, DF, this)
        }
    } ();
    vD.DE = function(_, nG) { !! nG && !this.ku ? dl.dw(_, this.Ae) : dl.nf(_, this.Ae)
    };
    vD.fy = function(cX) {
        var _ = this.dA[cX];
        if (cX == this.dF || !_ || dl.fP(_, this.fG)) {
            jn.hR(arguments[1]);
            return
        }
        var bX = {
            index: cX,
            last: this.dF
        };
        this.dF = cX;
        this.DE(_, !0);
        _ = this.dA[bX.last];
        if ( !! _) this.DE(_, !1);
        this.dR("onchange", bX);
        if (!bX.nostop) jn.hR(arguments[1])
    };
    vD.ic = function() {
        return this.dF
    };
    dl.xj = function(ey, cz) {
        var dU = dl.nx(ey);
        if (!dU) return null;
        if (!il.wE(dU, il.fU)) {
            cz = cz || {};
            cz.list = !cz.clazz ? dl.ft(dU) : dl.cT(dU, cz.clazz);
            delete cz.clazz
        }
        return il.wE(dU, il.fU, cz || ll)
    }
})(); (function() {
    var p = NEJ.P("yxp.page.module"),
    e = NEJ.P("nej.e"),
    cG = null;
    p.oo = NEJ.C();
    cG = p.oo.prototype;
    cG.zW = function() {
        e.f$("template_topbar")
    };
    new p.oo
})(); (function() {
    var dl = NEJ.P("nej.e"),
    zB = NEJ.P("nej.u"),
    il = NEJ.P("yxp.u");
    var kp = typeof document.createElement("div").style.opacity != "undefined";
    var lp = !kp && typeof document.createElement("div").style.filter != "undefined";
    var nD = /opacity=([^)]*)/;
    var km = /alpha\([^)]*\)/i;
    il.mc = function(jI, zV) {
        if (zV != undefined) {
            return nJ(jI, zV)
        }
        return mq(jI)
    };
    var nJ = function(jI, zV) {
        jI = dl.cK(jI);
        zV = Math.min(1, Math.max(zV, 0));
        if (kp) {
            jI.style.opacity = zV
        } else if (lp) {
            var ej = jI.style,
            kd = jI.currentStyle,
            m_ = zB.mU(zV) ? "alpha(opacity=" + zV * 100 + ")": "",
            gV = kd && kd.filter || ej.filter || "";
            ej.zoom = 1;
            if (zV >= 1 && gV.replace(km, "").trim() === "") {
                ej.removeAttribute("filter");
                if (kd && !kd.filter) {
                    return zV
                }
            }
            ej.filter = km.test(gV) ? gV.replace(km, m_) : gV + " " + m_
        }
        return zV
    };
    var mq = function(jI) {
        var zV = null;
        if (kp) {
            zV = jI.style.opacity === "" ? 1 : jI.style.opacity
        } else if (lp) {
            var gV = jI.currentStyle && jI.currentStyle.filter || jI.style.filter || "";
            zV = nD.test(gV) ? .01 * parseFloat(RegExp.$1) : 1
        }
        return zV
    }
})(); (function() {
    var Dn = NEJ.P("nej.p"),
    il = window;
    if ( !! il.requestAnimationFrame && !!il.cancelRequestAnimationFrame) return;
    var dx = Dn.gN.prefix.pro;
    if ( !! il[dx + "RequestAnimationFrame"] && !!il[dx + "CancelRequestAnimationFrame"]) {
        il.requestAnimationFrame = il[dx + "RequestAnimationFrame"];
        il.cancelRequestAnimationFrame = il[dx + "CancelRequestAnimationFrame"];
        return
    }
    var vt = Dn.dY,
    EG = vt.desktop ? 80 : vt.ios ? 50 : 30;
    il.requestAnimationFrame = function(ef) {
        return window.setTimeout(function() {
            try {
                ef( + (new Date))
            } catch(ex) {}
        },
        1e3 / EG)
    };
    il.cancelRequestAnimationFrame = function(dU) {
        window.clearTimeout(dU)
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    vy = NEJ.F,
    il = pW("nej.ut"),
    CR;
    il.kR = NEJ.C();
    CR = il.kR.dy(il.et);
    CR.dD = function(cz) {
        this.CH(cz);
        this.kU = cz.to || ll;
        this.jo = cz.from || {}
    };
    CR.eF = function() {
        this.CI();
        this.dP();
        delete this.kU;
        delete this.jo
    };
    CR.nl = function(c_) {
        if (!this.jo) return;
        if (("" + c_).indexOf(".") >= 0) c_ = +(new Date);
        if (this.kT(c_)) {
            this.dP();
            return
        }
        this.ho = requestAnimationFrame(this.nl.cC(this))
    };
    CR.kT = vy;
    CR.px = function() {
        this.jo.time = +(new Date);
        this.ho = requestAnimationFrame(this.nl.cC(this))
    };
    CR.dP = function() {
        this.ho = cancelRequestAnimationFrame(this.ho);
        this.dR("onstop")
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    zB = pW("nej.u"),
    il = pW("nej.ut"),
    CQ,
    Em;
    il.DM = NEJ.C();
    CQ = il.DM.dy(il.kR);
    Em = il.DM.dG;
    CQ.dD = function(cz) {
        this.CH(cz);
        this.nr = cz.duration || 200;
        this.EF = 1 / (200 * this.nr);
        this.EE(cz.timing);
        this.ED()
    };
    CQ.eF = function() {
        this.CI();
        delete this.CY;
        delete this.Dp
    };
    CQ.EE = function() {
        var ii = /^cubic\-bezier\((.*?)\)$/i,
        j_ = /\s*,\s*/i,
        En = {
            linear: [0, 0, 1, 1],
            ease: [.25, .1, .25, 1],
            easein: [.42, 0, 1, 1],
            easeout: [0, 0, .58, 1],
            easeinout: [0, 0, .58, 1]
        };
        var EC = function(zV, cX, cB) {
            cB[cX] = parseFloat(zV)
        };
        return function(Dk) {
            Dk = (Dk || "").toLowerCase();
            this.CY = En[Dk];
            if (ii.test(Dk)) {
                this.CY = RegExp.$1.split(j_);
                zB.rv(this.CY, EC)
            }
            if ( !! this.CY) return;
            this.CY = En.ease
        }
    } ();
    CQ.ED = function() {
        var em = this.CY,
        Dr = 3 * em[0],
        Eo = 3 * (em[2] - em[0]) - Dr,
        EB = 1 - Dr - Eo,
        Ds = 3 * em[1],
        Ep = 3 * (em[3] - em[1]) - Ds,
        EA = 1 - Ds - Ep;
        this.Dp = {
            ax: EB,
            ay: EA,
            bx: Eo,
            by: Ep,
            cx: Dr,
            cy: Ds
        }
    };
    CQ.Ez = function() {
        var Er = function(c_, CG) {
            return ((CG.ax * c_ + CG.bx) * c_ + CG.cx) * c_
        };
        var Ey = function(c_, CG) {
            return ((CG.ay * c_ + CG.by) * c_ + CG.cy) * c_
        };
        var Ex = function(c_, CG) {
            return (3 * CG.ax * c_ + 2 * CG.bx) * c_ + CG.cx
        };
        var Ew = function(c_, Et, CG) {
            var t0, t1, t2, x2, d2, i;
            for (t2 = c_, i = 0; i < 8; i++) {
                x2 = Er(t2, CG) - c_;
                if (Math.abs(x2) < Et) return t2;
                d2 = Ex(t2, CG);
                if (Math.abs(d2) < 1e-6) break;
                t2 = t2 - x2 / d2
            }
            t0 = 0;
            t1 = 1;
            t2 = c_;
            if (t2 < t0) return t0;
            if (t2 > t1) return t1;
            while (t0 < t1) {
                x2 = Er(t2, CG);
                if (Math.abs(x2 - c_) < Et) return t2;
                if (c_ > x2) t0 = t2;
                else t1 = t2;
                t2 = (t1 - t0) * .5 + t0
            }
            return t2
        };
        return function(jt) {
            return Ey(Ew(jt / this.nr, this.EF, this.Dp), this.Dp)
        }
    } ();
    CQ.kT = function(c_) {
        var jt = c_ - this.jo.time,
        Eu = this.Ez(jt),
        hr = zB.sN(this.jo.offset * (1 - Eu) + this.kU.offset * Eu, 2),
        nw = !1;
        if (jt >= this.nr) {
            hr = this.kU.offset;
            nw = !0
        }
        this.dR("onupdate", {
            offset: hr
        });
        return nw
    };
    CQ.dP = function() {
        this.dR("onupdate", {
            offset: this.kU.offset
        });
        Em.dP.apply(this, arguments)
    }
})(); (function() {
    var il = NEJ.P("nej.ut"),
    DQ;
    il.uW = NEJ.C();
    DQ = il.uW.dy(il.DM);
    DQ.dD = function(cz) {
        cz = NEJ.X({},
        cz);
        cz.timing = "linear";
        this.CH(cz)
    }
})(); (function() {
    var u = NEJ.P("nej.ut"),
    e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    yu = NEJ.P("yxp.u"),
    p = NEJ.P("yxp.ut"),
    hf = null;
    p.le = NEJ.C();
    hf = p.le.dy(u.et, !0);
    hf.dD = function(cz) {
        this.fq = e.cK(cz.parent) || null;
        this.jx = cz.slideList || [];
        this.lj = cz.tabList || [];
        this.nr = cz.duration || 600;
        this.hB = cz.timeout || 5e3;
        this.fD(cz);
        this.CH(cz)
    };
    hf.fD = function(cz) {
        var cX, nG;
        cX = cz.index;
        nG = cz.selected;
        for (var i = 0; i < this.jx.length; i++) {
            e.gl(this.jx[i], "index", i)
        }
        this.lk = u.fU.dz({
            list: this.lj,
            index: cX,
            event: "mouseover",
            selected: nG,
            onchange: this.ny.cC(this)
        });
        if (this.fq) {
            v.cM(this.fq, "mouseover", this.jr.cC(this));
            v.cM(this.fq, "mouseout", this.jA.cC(this))
        }
    };
    hf.tc = function() {};
    hf.ny = function(cz) {
        var hJ = null,
        lw = null,
        iF = null;
        for (var fh = 0; fh < this.jx.length; fh++) {
            if (e.gl(this.jx[fh], "index") == cz.index) {
                hJ = this.jx[fh];
                break
            }
        }
        hJ.parentNode.appendChild(hJ);
        this.jB = cz.index;
        if (iF = yu.mc(hJ) > .5) {
            iF = yu.mc(hJ, 0)
        }
        lw = u.uW.dz({
            from: {
                offset: iF
            },
            to: {
                offset: 1
            },
            duration: this.nr * (1 - iF),
            onupdate: function(options) {
                yu.mc(hJ, options.offset)
            },
            onstop: function() {
                u.uW.hp(lw)
            }
        });
        lw.px();
        if (this.ho != null) {
            window.clearTimeout(this.ho)
        }
        this.ho = window.setTimeout(this.ph.cC(this), this.hB)
    };
    hf.ph = function() {
        this.jB = this.jB || 0;
        if (this.jB >= this.jx.length - 1) {
            this.lk.fy(0)
        } else {
            this.lk.fy(this.jB + 1)
        }
    };
    hf.jr = function() {
        window.clearTimeout(this.ho)
    };
    hf.jA = function() {
        this.ho = window.setTimeout(this.ph.cC(this), this.hB / 3)
    }
})(); (function() {
    var dl = NEJ.P("nej.e"),
    jn = NEJ.P("nej.v"),
    il = NEJ.P("yxp.u");
    var zt = function() {
        var test = document.createElement("div"),
        control = test.cloneNode(false),
        fake = false,
        root = document.body ||
        function() {
            fake = true;
            return document.documentElement.appendChild(document.createElement("body"))
        } ();
        var oldCssText = root.style.cssText;
        root.style.cssText = "padding:0;margin:0";
        test.style.cssText = "position:fixed;top:42px";
        root.appendChild(test);
        root.appendChild(control);
        var ret = test.offsetTop !== control.offsetTop;
        root.removeChild(test);
        root.removeChild(control);
        root.style.cssText = oldCssText;
        if (fake) {
            document.documentElement.removeChild(root)
        }
        return ret
    };
    il.zu = function() {
        if (this.zo != undefined) {
            return this.zo
        }
        return this.zo = zt()
    };
    il.sN = function(jI, cz) {
        jI = dl.cK(jI);
        dl.iT(jI);
        if (this.zu()) {
            dl.hh(jI, "position", "fixed")
        } else {
            dl.hh(jI, "position", "absolute");
            zv(jI, cz)
        }
        zn(jI, cz);
        document.body.appendChild(jI)
    };
    zn = function(jI, cz) {
        jI.style.cssText = jI.style.cssText.replace(/(top|right|bottom|left):*;/i, "");
        cz = cz || {};
        zm = ["right", "bottom", "left"];
        for (var fh = 0; fh < zm.length; fh++) {
            var cD = zm[fh];
            if (cz[cD]) {
                dl.hh(jI, cD, cz[cD])
            }
        }
        if (cz["top"] != undefined) {
            dl.hh(jI, "top", (il.zu() ? 0 : dl.wg().scrollTop) + parseInt(cz["top"]) + "px")
        }
    };
    zv = function(jI, cz) {
        jn.cM(window, "scroll",
        function() {
            zn(jI, cz)
        })
    }
})(); (function() {
    var pW = NEJ.P,
    il = pW("yxp.ut"),
    Bd = pW("nej.ut"),
    Cq = pW("yxp.u"),
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    lu;
    il.Ci = NEJ.C();
    lu = il.Ci.dy(nej.ut.et, !0);
    lu.zW = function(cz) {
        this.CU(cz);
        this.fq = dl.cK(cz.parent || document.body);
        this.di = dl.cK(cz.float_div);
        this.zA = dl.cK(cz.relative_div);
        this.Bc = cz.zIndex || "900";
        this.AZ = cz.left;
        this.uN();
        this.AU(this.zA, this.di);
        jn.cM(window, "resize", this.AU.cC(this, this.zA, this.di))
    };
    lu.uN = function() {
        var ej = this.di.style;
        dl.iT(this.di);
        if (ej) {
            if (Cq.zu()) {
                ej.position = "fixed"
            } else {
                ej.position = "absolute"
            }
        }
        this.fq.appendChild(this.di)
    };
    lu.AU = function(pn, op) {
        var cJ = pn,
        ix = 0;
        var ix;
        while (cJ) {
            ix += cJ.offsetLeft;
            cJ = cJ.offsetParent
        }
        ix = ix + this.AZ;
        if (document.body.clientWidth <= 960) {
            ix = document.body.clientWidth - 88
        }
        op.style.left = ix + "px"
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    vy = NEJ.F,
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    zB = pW("nej.u"),
    il = pW("nej.ut"),
    CF;
    il.Ed = NEJ.C();
    CF = il.Ed.dy(il.et);
    CF.dD = function(cz) {
        this.CH(cz);
        this.gi = dl.cK(cz.pbtn);
        this.gh = dl.cK(cz.nbtn);
        this.De = dl.cK(cz.sbtn);
        this.Df = dl.cK(cz.ebtn);
        this.wt = cz.event || "click";
        this.Ae = cz.selected || "js-selected";
        this.fG = cz.disabled || "js-disabled";
        this.EK(cz.list);
        this.vU(cz.index || 1, cz.total || 1)
    };
    CF.eF = function() {
        this.CI();
        delete this.dA;
        delete this.wt;
        delete this.gi;
        delete this.gh;
        delete this.De;
        delete this.Df;
        delete this.Ef;
        delete this.eR;
        delete this.dF;
        delete this.Ae;
        delete this.fG
    };
    CF.EK = function() {
        var DF = function(cQ) {
            this.dA.push(cQ);
            this.wl([[cQ, this.wt, this.qv.AP(this, 0)]])
        };
        return function(cB) {
            this.dA = [];
            zB.rv(cB, DF, this);
            this.wl([[this.gi, "click", this.qv.AP(this, -1)], [this.gh, "click", this.qv.AP(this, 1)], [this.De, "click", this.qv.AP(this, -2)], [this.Df, "click", this.qv.AP(this, 2)]])
        }
    } ();
    CF.vG = function(cQ, cX) {
        if (cX == null) {
            cQ.innerText = "";
            cQ.style.display = "none";
            dl.nf(cQ, this.Ae)
        } else {
            cQ.innerText = cX;
            cQ.style.display = "";
            cX == this.dF ? dl.dw(cQ, this.Ae) : dl.nf(cQ, this.Ae)
        }
    };
    CF.qE = function() {
        if (this.dF == 1) {
            dl.dw(this.gi, this.fG);
            dl.dw(this.De, this.fG)
        } else {
            dl.nf(this.gi, this.fG);
            dl.nf(this.De, this.fG)
        }
        if (this.dF == this.eR) {
            dl.dw(this.gh, this.fG);
            dl.dw(this.Df, this.fG)
        } else {
            dl.nf(this.gh, this.fG);
            dl.nf(this.Df, this.fG)
        }
    };
    CF.Eg = vy;
    CF.nv = function() {
        this.Eg();
        this.qE();
        this.dR("onchange", {
            last: this.Ef,
            index: this.dF,
            total: this.eR
        })
    };
    CF.wD = function(cX) {
        cX = parseInt(cX);
        if (isNaN(cX) || this.eR == null) return ! 1;
        cX = Math.max(1, Math.min(cX, this.eR));
        this.Ef = this.dF;
        this.dF = cX;
        return ! 0
    };
    CF.wC = function(zY) {
        zY = parseInt(zY);
        if (isNaN(zY) || zY < 1) return ! 1;
        this.eR = zY;
        return ! 0
    };
    CF.qv = function(bX, dq) {
        jn.hR(bX);
        var _ = jn.dE(bX);
        if (!_ || dl.fP(_, this.Ae) || dl.fP(_, this.fG)) return;
        var cX = _.innerText;
        switch (dq) {
        case 1:
        case - 1 : cX = this.dF + dq;
            break;
        case 2:
            cX = this.eR;
            break;
        case - 2 : cX = 1;
            break
        }
        this.lA(cX)
    };
    CF.ic = function() {
        return this.dF
    };
    CF.lA = function(cX) {
        var xd = this.dF;
        this.wD(cX);
        if (xd != this.dF) this.nv()
    };
    CF.vW = function() {
        return this.eR
    };
    CF.qz = function(zY) {
        if (this.wC(zY) && this.dF != null) {
            this.dF = 1;
            this.nv()
        }
    };
    CF.vU = function(cX, zY) {
        if (!this.wC(zY) || !this.wD(cX)) return;
        this.nv()
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    il = pW("nej.ut"),
    ea;
    il.iZ = NEJ.C();
    ea = il.iZ.dy(il.Ed);
    ea.zW = function() {
        this.CU();
        var cQ = dl.gy("span", "zdot");
        cQ.innerText = "...";
        this.i_ = [cQ.cloneNode(true), cQ]
    };
    ea.eF = function() {
        this.CI();
        this.lO()
    };
    ea.lO = function() {
        dl.iT(this.i_[0]);
        dl.iT(this.i_[1])
    };
    ea.Eg = function() {
        this.lO();
        this.vG(this.dA[0], 1);
        var Ac = 1;
        if (this.dF > 1) {
            var dJ = this.dA.length,
            qH = Math.floor((dJ - 2) / 2),
            qI = this.eR - dJ + 2,
            en = Math.max(2, this.dF - qH);
            if (this.eR >= dJ) en = Math.min(en, qI);
            if (en > 2) this.dA[0].insertAdjacentElement("afterEnd", this.i_[0]);
            for (var cX;; Ac++) {
                cX = en + Ac - 1;
                if (cX > this.dF) break;
                this.vG(this.dA[Ac], cX)
            }
        }
        if (this.dF < this.eR) {
            var cX, en = this.dF + 1;
            for (var i = 0,
            l = this.dA.length - 2;; i++, Ac++) {
                cX = en + i;
                if (Ac > l || cX > this.eR) break;
                this.vG(this.dA[Ac], cX)
            }
            if (cX < this.eR) this.dA[Ac].insertAdjacentElement("beforeBegin", this.i_[1]);
            if (cX <= this.eR) this.vG(this.dA[Ac++], this.eR)
        }
        for (var l = this.dA.length; Ac < l; Ac++) this.vG(this.dA[Ac])
    };
    dl.hm = function(ey, cz) {
        var dU = dl.nx(ey);
        if (!dU) return null;
        if (!il.wE(dU, il.iZ)) {
            cz = cz || {};
            var cB = !cz.clazz ? dl.ft(dU) : dl.cT(dU, cz.clazz);
            cz.pbtn = cB.shift();
            cz.nbtn = cB.pop();
            cz.list = cB;
            delete cz.clazz
        }
        return il.wE(dU, il.iZ, cz || ll)
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    vL = NEJ.R,
    dl = pW("nej.e"),
    zB = pW("nej.u"),
    mo = pW("nej.ut"),
    il = pW("nej.ui"),
    gX;
    var ec = dl.fR(".#<uispace>{font-size:12px;line-height:160%;}.#<uispace> a{margin:0 2px;padding:2px 8px;color:#333;border:1px solid #aaa;text-decoration:none;}.#<uispace> .js-disabled{cursor:default;}.#<uispace> .js-selected{background:#bbb;}");
    var EI = dl.ju('{if !defined("noprv")||!noprv}<a href="#" class="zbtn zprv ${\'js-p-\'|seed}">上一页</a>{/if}{list 1..number as x}<a href="#" class="zpgi zpg${x} ${\'js-i-\'|seed}"></a>{/list}{if !defined("nonxt")||!nonxt}<a href="#" class="zbtn znxt ${\'js-n-\'|seed}">下一页</a>{/if}');
    var zZ;
    il.jy = NEJ.C();
    gX = il.jy.dy(il.gr);
    gX.zW = function() {
        this.hN = {
            onchange: this.qO.cC(this)
        };
        this.CU()
    };
    gX.dD = function(cz) {
        this.CH(cz);
        this.hN.total = cz.total;
        this.hN.index = cz.index;
        this.hM = mo.iZ.dz(this.hN)
    };
    gX.eF = function() {
        this.CI();
        this.hM = this.hM.hp();
        this.md()
    };
    gX.mA = function() {
        this.fX = ec;
        this.gs = zZ
    };
    gX.fD = function() {
        this.Ev();
        var eg = dl.sR();
        this.hN.list = dl.cT(this.cN, "js-i-" + eg);
        this.hN.pbtn = (dl.cT(this.cN, "js-p-" + eg) || vL)[0];
        this.hN.nbtn = (dl.cT(this.cN, "js-n-" + eg) || vL)[0]
    };
    gX.Es = function() {
        zZ = dl.eY('<div class="' + this.fX + '">' + this.EH({
            number: 9
        }) + "</div>");
        this.gs = zZ
    };
    gX.EH = function(cA) {
        return dl.gc(EI, cA)
    };
    gX.qO = function(bX) {
        if (this.hS) return;
        var cX = bX.index,
        zY = bX.total;
        this.hS = !0;
        this.vU(cX, zY);
        zB.rv(this.hg,
        function(eW) {
            eW.vU(cX, zY)
        });
        this.hS = !1;
        this.dR("onchange", bX)
    };
    gX.cC = function(ey) {
        ey = dl.cK(ey);
        if (!ey) return;
        var eW = this.constructor.dz({
            parent: ey,
            index: this.ic(),
            total: this.vW()
        });
        eW.dI("onchange", this.hN.onchange);
        if (!this.hg) this.hg = [];
        this.hg.push(eW)
    };
    gX.md = function() {
        var jF = function(eW, cX, cB) {
            eW.hp();
            cB.splice(cX, 1)
        };
        return function() {
            zB.wV(this.hg, jF)
        }
    } ();
    gX.lA = function(cX) {
        if (!this.hM) return;
        this.hM.lA(cX)
    };
    gX.ic = function() {
        if (!this.hM) return 1;
        return this.hM.ic()
    };
    gX.vW = function() {
        if (!this.hM) return 1;
        return this.hM.vW()
    };
    gX.vU = function(cX, zY) {
        if (!this.hM) return;
        this.hM.vU(cX, zY)
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    p = NEJ.P("yxp.ui"),
    v = NEJ.P("nej.v"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace>{text-align:right;width:420px;}.#<uispace> p.text{line-height:19px;padding:9px 0 0 38px;color:#808080;text-align:left;background:url(http://st1.yxp.126.net/rsc/img/wicons.png) -80px -160px no-repeat;font-family:"微软雅黑";font-size:14px;}.#<uispace> input.sure{cursor:pointer;margin-top:50px;margin-right:0px;font-weight:bold;text-align:center;color:#fff;font-size:18px;width:125px;height:34px;line-height:34px;background:url(http://st1.yxp.126.net/rsc/img/bg-x.png) 0 -50px repeat-x;border:0px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> input.sure:hover{background-position:0 -100px;}');
    var zZ = e.eY('<div class="' + ec + '"><p class="text">&nbsp;</p><input class="sure mark-sure" type="button" value="确&nbsp;定"/></div>');
    p.oi = NEJ.C();
    cH = p.oi.dy(p.gx, !0);
    dc = p.oi.dG;
    cH.dD = function(cI) {
        cI = cI || {};
        this.CH(cI);
        this.fg = cI.sureCallBack
    };
    cH.dX = function(cI) {
        dc.dX.apply(this, arguments);
        var eD = e.gn(zZ);
        this.hQ().appendChild(eD);
        this.lH = eD.getElementsByTagName("p")[0];
        if (cI.width) e.hh(eD, "width", cI.width);
        this.eC = p.g_.ep({
            opacity: .6,
            bgc: "#000"
        });
        v.cM(e.cT(this.cN, "mark-sure")[0], "click", this.pj.cC(this))
    };
    cH.pj = function() {
        this.dZ();
        if (this.fg) this.fg()
    };
    cH.dH = function(fu) {
        if (fu) this.lH.innerHTML = fu;
        this.eC.dH();
        dc.dH.apply(this, arguments);
        return this
    };
    cH.dZ = function() {
        this.eC.dZ();
        dc.dZ.apply(this, arguments);
        return this
    }
})(); (function() { (function(a, b) {
        $window = a(b),
        a.fn.lazyload = function(c) {
            function f() {
                var b = 0;
                d.each(function() {
                    var c = a(this);
                    if (e.skip_invisible && !c.is(":visible")) return;
                    if (!a.abovethetop(this, e) && !a.leftofbegin(this, e)) if (!a.belowthefold(this, e) && !a.rightoffold(this, e)) c.trigger("appear");
                    else if (++b > e.failure_limit) return ! 1
                })
            }
            var d = this,
            e = {
                threshold: 0,
                failure_limit: 0,
                event: "scroll",
                effect: "show",
                container: b,
                data_attribute: "original",
                skip_invisible: !0,
                appear: null,
                load: null
            };
            return c && (undefined !== c.failurelimit && (c.failure_limit = c.failurelimit, delete c.failurelimit), undefined !== c.effectspeed && (c.effect_speed = c.effectspeed, delete c.effectspeed), a.extend(e, c)),
            $container = e.container === undefined || e.container === b ? $window: a(e.container),
            0 === e.event.indexOf("scroll") && $container.bind(e.event,
            function(a) {
                return f()
            }),
            this.each(function() {
                var b = this,
                c = a(b);
                b.loaded = !1,
                c.one("appear",
                function() {
                    if (!this.loaded) {
                        if (e.appear) {
                            var f = d.length;
                            e.appear.call(b, f, e)
                        }
                        a("<img />").bind("load",
                        function() {
                            c.hide().attr("src", c.data(e.data_attribute))[e.effect](e.effect_speed),
                            b.loaded = !0;
                            var f = a.grep(d,
                            function(a) {
                                return ! a.loaded
                            });
                            d = a(f);
                            if (e.load) {
                                var g = d.length;
                                e.load.call(b, g, e)
                            }
                        }).attr("src", c.data(e.data_attribute))
                    }
                }),
                0 !== e.event.indexOf("scroll") && c.bind(e.event,
                function(a) {
                    b.loaded || c.trigger("appear")
                })
            }),
            $window.bind("resize",
            function(a) {
                f()
            }),
            f(),
            this
        },
        a.belowthefold = function(c, d) {
            var e;
            return d.container === undefined || d.container === b ? e = $window.height() + $window.scrollTop() : e = $container.offset().top + $container.height(),
            e <= a(c).offset().top - d.threshold
        },
        a.rightoffold = function(c, d) {
            var e;
            return d.container === undefined || d.container === b ? e = $window.width() + $window.scrollLeft() : e = $container.offset().left + $container.width(),
            e <= a(c).offset().left - d.threshold
        },
        a.abovethetop = function(c, d) {
            var e;
            return d.container === undefined || d.container === b ? e = $window.scrollTop() : e = $container.offset().top,
            e >= a(c).offset().top + d.threshold + a(c).height()
        },
        a.leftofbegin = function(c, d) {
            var e;
            return d.container === undefined || d.container === b ? e = $window.scrollLeft() : e = $container.offset().left,
            e >= a(c).offset().left + d.threshold + a(c).width()
        },
        a.inviewport = function(b, c) {
            return ! a.rightofscreen(b, c) && !a.leftofscreen(b, c) && !a.belowthefold(b, c) && !a.abovethetop(b, c)
        },
        a.extend(a.expr[":"], {
            "below-the-fold": function(c) {
                return a.belowthefold(c, {
                    threshold: 0,
                    container: b
                })
            },
            "above-the-top": function(c) {
                return ! a.belowthefold(c, {
                    threshold: 0,
                    container: b
                })
            },
            "right-of-screen": function(c) {
                return a.rightoffold(c, {
                    threshold: 0,
                    container: b
                })
            },
            "left-of-screen": function(c) {
                return ! a.rightoffold(c, {
                    threshold: 0,
                    container: b
                })
            },
            "in-viewport": function(c) {
                return ! a.inviewport(c, {
                    threshold: 0,
                    container: b
                })
            },
            "above-the-fold": function(c) {
                return ! a.belowthefold(c, {
                    threshold: 0,
                    container: b
                })
            },
            "right-of-fold": function(c) {
                return a.rightoffold(c, {
                    threshold: 0,
                    container: b
                })
            },
            "left-of-fold": function(c) {
                return ! a.rightoffold(c, {
                    threshold: 0,
                    container: b
                })
            }
        })
    })(jQuery, window);
    $("img.lazy").lazyload({
        skip_invisible: false
    })
})();
var swfobject = function() {
    var D = "undefined",
    r = "object",
    S = "Shockwave Flash",
    W = "ShockwaveFlash.ShockwaveFlash",
    q = "application/x-shockwave-flash",
    R = "SWFObjectExprInst",
    x = "onreadystatechange",
    O = window,
    j = document,
    t = navigator,
    T = false,
    U = [h],
    o = [],
    N = [],
    I = [],
    l,
    Q,
    E,
    B,
    J = false,
    a = false,
    n,
    G,
    m = true,
    M = function() {
        var aa = typeof j.getElementById != D && typeof j.getElementsByTagName != D && typeof j.createElement != D,
        ah = t.userAgent.toLowerCase(),
        Y = t.platform.toLowerCase(),
        ae = Y ? /win/.test(Y) : /win/.test(ah),
        ac = Y ? /mac/.test(Y) : /mac/.test(ah),
        af = /webkit/.test(ah) ? parseFloat(ah.replace(/^.*webkit\/(\d+(\.\d+)?).*$/, "$1")) : false,
        X = !+"1",
        ag = [0, 0, 0],
        ab = null;
        if (typeof t.plugins != D && typeof t.plugins[S] == r) {
            ab = t.plugins[S].description;
            if (ab && !(typeof t.mimeTypes != D && t.mimeTypes[q] && !t.mimeTypes[q].enabledPlugin)) {
                T = true;
                X = false;
                ab = ab.replace(/^.*\s+(\S+\s+\S+$)/, "$1");
                ag[0] = parseInt(ab.replace(/^(.*)\..*$/, "$1"), 10);
                ag[1] = parseInt(ab.replace(/^.*\.(.*)\s.*$/, "$1"), 10);
                ag[2] = /[a-zA-Z]/.test(ab) ? parseInt(ab.replace(/^.*[a-zA-Z]+(.*)$/, "$1"), 10) : 0
            }
        } else {
            if (typeof O.ActiveXObject != D) {
                try {
                    var ad = new ActiveXObject(W);
                    if (ad) {
                        ab = ad.GetVariable("$version");
                        if (ab) {
                            X = true;
                            ab = ab.split(" ")[1].split(",");
                            ag = [parseInt(ab[0], 10), parseInt(ab[1], 10), parseInt(ab[2], 10)]
                        }
                    }
                } catch(Z) {}
            }
        }
        return {
            w3: aa,
            pv: ag,
            wk: af,
            ie: X,
            win: ae,
            mac: ac
        }
    } (),
    k = function() {
        if (!M.w3) {
            return
        }
        if (typeof j.readyState != D && j.readyState == "complete" || typeof j.readyState == D && (j.getElementsByTagName("body")[0] || j.body)) {
            f()
        }
        if (!J) {
            if (typeof j.addEventListener != D) {
                j.addEventListener("DOMContentLoaded", f, false)
            }
            if (M.ie && M.win) {
                j.attachEvent(x,
                function() {
                    if (j.readyState == "complete") {
                        j.detachEvent(x, arguments.callee);
                        f()
                    }
                });
                if (O == top) { (function() {
                        if (J) {
                            return
                        }
                        try {
                            j.documentElement.doScroll("left")
                        } catch(X) {
                            setTimeout(arguments.callee, 0);
                            return
                        }
                        f()
                    })()
                }
            }
            if (M.wk) { (function() {
                    if (J) {
                        return
                    }
                    if (!/loaded|complete/.test(j.readyState)) {
                        setTimeout(arguments.callee, 0);
                        return
                    }
                    f()
                })()
            }
            s(f)
        }
    } ();
    function f() {
        if (J) {
            return
        }
        try {
            var Z = j.getElementsByTagName("body")[0].appendChild(C("span"));
            Z.parentNode.removeChild(Z)
        } catch(aa) {
            return
        }
        J = true;
        var X = U.length;
        for (var Y = 0; Y < X; Y++) {
            U[Y]()
        }
    }
    function K(X) {
        if (J) {
            X()
        } else {
            U[U.length] = X
        }
    }
    function s(Y) {
        if (typeof O.addEventListener != D) {
            O.addEventListener("load", Y, false)
        } else {
            if (typeof j.addEventListener != D) {
                j.addEventListener("load", Y, false)
            } else {
                if (typeof O.attachEvent != D) {
                    i(O, "onload", Y)
                } else {
                    if (typeof O.onload == "function") {
                        var X = O.onload;
                        O.onload = function() {
                            X();
                            Y()
                        }
                    } else {
                        O.onload = Y
                    }
                }
            }
        }
    }
    function h() {
        if (T) {
            V()
        } else {
            H()
        }
    }
    function V() {
        var X = j.getElementsByTagName("body")[0];
        var aa = C(r);
        aa.setAttribute("type", q);
        var Z = X.appendChild(aa);
        if (Z) {
            var Y = 0; (function() {
                if (typeof Z.GetVariable != D) {
                    var ab = Z.GetVariable("$version");
                    if (ab) {
                        ab = ab.split(" ")[1].split(",");
                        M.pv = [parseInt(ab[0], 10), parseInt(ab[1], 10), parseInt(ab[2], 10)]
                    }
                } else {
                    if (Y < 10) {
                        Y++;
                        setTimeout(arguments.callee, 10);
                        return
                    }
                }
                X.removeChild(aa);
                Z = null;
                H()
            })()
        } else {
            H()
        }
    }
    function H() {
        var ag = o.length;
        if (ag > 0) {
            for (var af = 0; af < ag; af++) {
                var Y = o[af].id;
                var ab = o[af].callbackFn;
                var aa = {
                    success: false,
                    id: Y
                };
                if (M.pv[0] > 0) {
                    var ae = c(Y);
                    if (ae) {
                        if (F(o[af].swfVersion) && !(M.wk && M.wk < 312)) {
                            w(Y, true);
                            if (ab) {
                                aa.success = true;
                                aa.ref = z(Y);
                                ab(aa)
                            }
                        } else {
                            if (o[af].expressInstall && A()) {
                                var ai = {};
                                ai.data = o[af].expressInstall;
                                ai.width = ae.getAttribute("width") || "0";
                                ai.height = ae.getAttribute("height") || "0";
                                if (ae.getAttribute("class")) {
                                    ai.styleclass = ae.getAttribute("class")
                                }
                                if (ae.getAttribute("align")) {
                                    ai.align = ae.getAttribute("align")
                                }
                                var ah = {};
                                var X = ae.getElementsByTagName("param");
                                var ac = X.length;
                                for (var ad = 0; ad < ac; ad++) {
                                    if (X[ad].getAttribute("name").toLowerCase() != "movie") {
                                        ah[X[ad].getAttribute("name")] = X[ad].getAttribute("value")
                                    }
                                }
                                P(ai, ah, Y, ab)
                            } else {
                                p(ae);
                                if (ab) {
                                    ab(aa)
                                }
                            }
                        }
                    }
                } else {
                    w(Y, true);
                    if (ab) {
                        var Z = z(Y);
                        if (Z && typeof Z.SetVariable != D) {
                            aa.success = true;
                            aa.ref = Z
                        }
                        ab(aa)
                    }
                }
            }
        }
    }
    function z(aa) {
        var X = null;
        var Y = c(aa);
        if (Y && Y.nodeName == "OBJECT") {
            if (typeof Y.SetVariable != D) {
                X = Y
            } else {
                var Z = Y.getElementsByTagName(r)[0];
                if (Z) {
                    X = Z
                }
            }
        }
        return X
    }
    function A() {
        return ! a && F("6.0.65") && (M.win || M.mac) && !(M.wk && M.wk < 312)
    }
    function P(aa, ab, X, Z) {
        a = true;
        E = Z || null;
        B = {
            success: false,
            id: X
        };
        var ae = c(X);
        if (ae) {
            if (ae.nodeName == "OBJECT") {
                l = g(ae);
                Q = null
            } else {
                l = ae;
                Q = X
            }
            aa.id = R;
            if (typeof aa.width == D || !/%$/.test(aa.width) && parseInt(aa.width, 10) < 310) {
                aa.width = "310"
            }
            if (typeof aa.height == D || !/%$/.test(aa.height) && parseInt(aa.height, 10) < 137) {
                aa.height = "137"
            }
            j.title = j.title.slice(0, 47) + " - Flash Player Installation";
            var ad = M.ie && M.win ? "ActiveX": "PlugIn",
            ac = "MMredirectURL=" + O.location.toString().replace(/&/g, "%26") + "&MMplayerType=" + ad + "&MMdoctitle=" + j.title;
            if (typeof ab.flashvars != D) {
                ab.flashvars += "&" + ac
            } else {
                ab.flashvars = ac
            }
            if (M.ie && M.win && ae.readyState != 4) {
                var Y = C("div");
                X += "SWFObjectNew";
                Y.setAttribute("id", X);
                ae.parentNode.insertBefore(Y, ae);
                ae.style.display = "none"; (function() {
                    if (ae.readyState == 4) {
                        ae.parentNode.removeChild(ae)
                    } else {
                        setTimeout(arguments.callee, 10)
                    }
                })()
            }
            u(aa, ab, X)
        }
    }
    function p(Y) {
        if (M.ie && M.win && Y.readyState != 4) {
            var X = C("div");
            Y.parentNode.insertBefore(X, Y);
            X.parentNode.replaceChild(g(Y), X);
            Y.style.display = "none"; (function() {
                if (Y.readyState == 4) {
                    Y.parentNode.removeChild(Y)
                } else {
                    setTimeout(arguments.callee, 10)
                }
            })()
        } else {
            Y.parentNode.replaceChild(g(Y), Y)
        }
    }
    function g(ab) {
        var aa = C("div");
        if (M.win && M.ie) {
            aa.innerHTML = ab.innerHTML
        } else {
            var Y = ab.getElementsByTagName(r)[0];
            if (Y) {
                var ad = Y.childNodes;
                if (ad) {
                    var X = ad.length;
                    for (var Z = 0; Z < X; Z++) {
                        if (! (ad[Z].nodeType == 1 && ad[Z].nodeName == "PARAM") && !(ad[Z].nodeType == 8)) {
                            aa.appendChild(ad[Z].cloneNode(true))
                        }
                    }
                }
            }
        }
        return aa
    }
    function u(ai, ag, Y) {
        var X, aa = c(Y);
        if (M.wk && M.wk < 312) {
            return X
        }
        if (aa) {
            if (typeof ai.id == D) {
                ai.id = Y
            }
            if (M.ie && M.win) {
                var ah = "";
                for (var ae in ai) {
                    if (ai[ae] != Object.prototype[ae]) {
                        if (ae.toLowerCase() == "data") {
                            ag.movie = ai[ae]
                        } else {
                            if (ae.toLowerCase() == "styleclass") {
                                ah += ' class="' + ai[ae] + '"'
                            } else {
                                if (ae.toLowerCase() != "classid") {
                                    ah += " " + ae + '="' + ai[ae] + '"'
                                }
                            }
                        }
                    }
                }
                var af = "";
                for (var ad in ag) {
                    if (ag[ad] != Object.prototype[ad]) {
                        af += '<param name="' + ad + '" value="' + ag[ad] + '" />'
                    }
                }
                aa.outerHTML = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"' + ah + ">" + af + "</object>";
                N[N.length] = ai.id;
                X = c(ai.id)
            } else {
                var Z = C(r);
                Z.setAttribute("type", q);
                for (var ac in ai) {
                    if (ai[ac] != Object.prototype[ac]) {
                        if (ac.toLowerCase() == "styleclass") {
                            Z.setAttribute("class", ai[ac])
                        } else {
                            if (ac.toLowerCase() != "classid") {
                                Z.setAttribute(ac, ai[ac])
                            }
                        }
                    }
                }
                for (var ab in ag) {
                    if (ag[ab] != Object.prototype[ab] && ab.toLowerCase() != "movie") {
                        e(Z, ab, ag[ab])
                    }
                }
                aa.parentNode.replaceChild(Z, aa);
                X = Z
            }
        }
        return X
    }
    function e(Z, X, Y) {
        var aa = C("param");
        aa.setAttribute("name", X);
        aa.setAttribute("value", Y);
        Z.appendChild(aa)
    }
    function y(Y) {
        var X = c(Y);
        if (X && X.nodeName == "OBJECT") {
            if (M.ie && M.win) {
                X.style.display = "none"; (function() {
                    if (X.readyState == 4) {
                        b(Y)
                    } else {
                        setTimeout(arguments.callee, 10)
                    }
                })()
            } else {
                X.parentNode.removeChild(X)
            }
        }
    }
    function b(Z) {
        var Y = c(Z);
        if (Y) {
            for (var X in Y) {
                if (typeof Y[X] == "function") {
                    Y[X] = null
                }
            }
            Y.parentNode.removeChild(Y)
        }
    }
    function c(Z) {
        var X = null;
        try {
            X = j.getElementById(Z)
        } catch(Y) {}
        return X
    }
    function C(X) {
        return j.createElement(X)
    }
    function i(Z, X, Y) {
        Z.attachEvent(X, Y);
        I[I.length] = [Z, X, Y]
    }
    function F(Z) {
        var Y = M.pv,
        X = Z.split(".");
        X[0] = parseInt(X[0], 10);
        X[1] = parseInt(X[1], 10) || 0;
        X[2] = parseInt(X[2], 10) || 0;
        return Y[0] > X[0] || Y[0] == X[0] && Y[1] > X[1] || Y[0] == X[0] && Y[1] == X[1] && Y[2] >= X[2] ? true: false
    }
    function v(ac, Y, ad, ab) {
        if (M.ie && M.mac) {
            return
        }
        var aa = j.getElementsByTagName("head")[0];
        if (!aa) {
            return
        }
        var X = ad && typeof ad == "string" ? ad: "screen";
        if (ab) {
            n = null;
            G = null
        }
        if (!n || G != X) {
            var Z = C("style");
            Z.setAttribute("type", "text/css");
            Z.setAttribute("media", X);
            n = aa.appendChild(Z);
            if (M.ie && M.win && typeof j.styleSheets != D && j.styleSheets.length > 0) {
                n = j.styleSheets[j.styleSheets.length - 1]
            }
            G = X
        }
        if (M.ie && M.win) {
            if (n && typeof n.addRule == r) {
                n.addRule(ac, Y)
            }
        } else {
            if (n && typeof j.createTextNode != D) {
                n.appendChild(j.createTextNode(ac + " {" + Y + "}"))
            }
        }
    }
    function w(Z, X) {
        if (!m) {
            return
        }
        var Y = X ? "visible": "hidden";
        if (J && c(Z)) {
            c(Z).style.visibility = Y
        } else {
            v("#" + Z, "visibility:" + Y)
        }
    }
    function L(Y) {
        var Z = /[\\\"<>\.;]/;
        var X = Z.exec(Y) != null;
        return X && typeof encodeURIComponent != D ? encodeURIComponent(Y) : Y
    }
    var d = function() {
        if (M.ie && M.win) {
            window.attachEvent("onunload",
            function() {
                var ac = I.length;
                for (var ab = 0; ab < ac; ab++) {
                    I[ab][0].detachEvent(I[ab][1], I[ab][2])
                }
                var Z = N.length;
                for (var aa = 0; aa < Z; aa++) {
                    y(N[aa])
                }
                for (var Y in M) {
                    M[Y] = null
                }
                M = null;
                for (var X in swfobject) {
                    swfobject[X] = null
                }
                swfobject = null
            })
        }
    } ();
    return {
        registerObject: function(ab, X, aa, Z) {
            if (M.w3 && ab && X) {
                var Y = {};
                Y.id = ab;
                Y.swfVersion = X;
                Y.expressInstall = aa;
                Y.callbackFn = Z;
                o[o.length] = Y;
                w(ab, false)
            } else {
                if (Z) {
                    Z({
                        success: false,
                        id: ab
                    })
                }
            }
        },
        getObjectById: function(X) {
            if (M.w3) {
                return z(X)
            }
        },
        embedSWF: function(ab, ah, ae, ag, Y, aa, Z, ad, af, ac) {
            var X = {
                success: false,
                id: ah
            };
            if (M.w3 && !(M.wk && M.wk < 312) && ab && ah && ae && ag && Y) {
                w(ah, false);
                K(function() {
                    ae += "";
                    ag += "";
                    var aj = {};
                    if (af && typeof af === r) {
                        for (var al in af) {
                            aj[al] = af[al]
                        }
                    }
                    aj.data = ab;
                    aj.width = ae;
                    aj.height = ag;
                    var am = {};
                    if (ad && typeof ad === r) {
                        for (var ak in ad) {
                            am[ak] = ad[ak]
                        }
                    }
                    if (Z && typeof Z === r) {
                        for (var ai in Z) {
                            if (typeof am.flashvars != D) {
                                am.flashvars += "&" + ai + "=" + Z[ai]
                            } else {
                                am.flashvars = ai + "=" + Z[ai]
                            }
                        }
                    }
                    if (F(Y)) {
                        var an = u(aj, am, ah);
                        if (aj.id == ah) {
                            w(ah, true)
                        }
                        X.success = true;
                        X.ref = an
                    } else {
                        if (aa && A()) {
                            aj.data = aa;
                            P(aj, am, ah, ac);
                            return
                        } else {
                            w(ah, true)
                        }
                    }
                    if (ac) {
                        ac(X)
                    }
                })
            } else {
                if (ac) {
                    ac(X)
                }
            }
        },
        switchOffAutoHideShow: function() {
            m = false
        },
        ua: M,
        getFlashPlayerVersion: function() {
            return {
                major: M.pv[0],
                minor: M.pv[1],
                release: M.pv[2]
            }
        },
        hasFlashPlayerVersion: F,
        createSWF: function(Z, Y, X) {
            if (M.w3) {
                return u(Z, Y, X)
            } else {
                return undefined
            }
        },
        showExpressInstall: function(Z, aa, X, Y) {
            if (M.w3 && A()) {
                P(Z, aa, X, Y)
            }
        },
        removeSWF: function(X) {
            if (M.w3) {
                y(X)
            }
        },
        createCSS: function(aa, Z, Y, X) {
            if (M.w3) {
                v(aa, Z, Y, X)
            }
        },
        addDomLoadEvent: K,
        addLoadEvent: s,
        getQueryParamValue: function(aa) {
            var Z = j.location.search || j.location.hash;
            if (Z) {
                if (/\?/.test(Z)) {
                    Z = Z.split("?")[1]
                }
                if (aa == null) {
                    return L(Z)
                }
                var Y = Z.split("&");
                for (var X = 0; X < Y.length; X++) {
                    if (Y[X].substring(0, Y[X].indexOf("=")) == aa) {
                        return L(Y[X].substring(Y[X].indexOf("=") + 1))
                    }
                }
            }
            return ""
        },
        expressInstallCallback: function() {
            if (a) {
                var X = c(R);
                if (X && l) {
                    X.parentNode.replaceChild(l, X);
                    if (Q) {
                        w(Q, true);
                        if (M.ie && M.win) {
                            l.style.display = "block"
                        }
                    }
                    if (E) {
                        E(B)
                    }
                }
                a = false
            }
        }
    }
} (); (function() {
    var e = NEJ.P("nej.p"),
    u = NEJ.P("yxp.u"),
    j = NEJ.P("nej.j");
    var qj = {
        ap1: {
            sale: .75,
            desc: "金账户特惠",
            vc: "ZFB1",
            pclass: "alipay-big-photo",
            indexUrl: "/indexAP.html",
            desc2: "享受支付宝金账户特惠，首次购物75折，以后85折"
        },
        ap2: {
            sale: .85,
            desc: "金账户特惠",
            vc: "ZFB2",
            pclass: "alipay-big-photo",
            indexUrl: "/indexAP.html",
            desc2: "享受支付宝金账户特惠，首次购物75折，以后85折"
        },
        ma1: {
            sale: .75,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO1",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        ma2: {
            sale: .7,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO2",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        ma3: {
            sale: .6,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO3",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        ma4: {
            sale: .55,
            desc: "邮箱等级特惠",
            vc: "DAIJIAO4",
            pclass: "ma-big-photo",
            indexUrl: "/indexMA.html"
        },
        qq1: {
            sale: .65,
            desc: "QQ黄钻特惠",
            vc: "qqlv7",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        },
        qq2: {
            sale: .7,
            desc: "QQ黄钻特惠",
            vc: "qqlv3456",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        },
        qq3: {
            sale: .75,
            desc: "QQ黄钻特惠",
            vc: "qqlv12",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        },
        qq4: {
            sale: .9,
            desc: "QQ用户特惠",
            vc: "qqlv0",
            pclass: "qq-big-photo",
            indexUrl: "/indexQQ.html"
        }
    };
    u.mm = function() {
        var fB = window.navigator.userAgent;
        var mo = "0";
        if (fB.indexOf("TencentTraveler") >= 0 || e.gN.browser == "ie" && (external.gbGetVersion || external.max_language_id)) {
            mo = (new Date).getTime()
        }
        return "&t=" + mo
    };
    u.kL = function(hC, qg, em) {
        if ((hC == "ma1" || hC == "ma2" || hC == "ma3" || hC == "ma4") && em >= 1400 && em <= 1403) {
            if (em == 1401 || em == 1403) return [29, "邮箱等级特惠"];
            else return [43, "邮箱等级特惠"]
        } else {
            var mt = qj[hC];
            var sd = em == 1406 || em >= 2e4 ? qg: Math.floor(mt.sale * parseFloat(qg) * 10) / 10;
            return [sd, mt.desc]
        }
    };
    u.ta = function(hC) {
        return qj[hC]
    };
    u.hE = function() {
        return j.hw("S_INFO") != ""
    };
    u.kX = function() {
        var iU = j.hw("P_INFO") || "",
        cX = iU.indexOf("|");
        if (cX > 0) {
            iU = iU.substring(0, cX) + ""
        }
        return iU || ""
    };
    u.tQ = function(hj) {
        if (hj) {
            if (hj.click) {
                hj.click()
            } else {
                var bX = document.createEvent("MouseEvents");
                bX.initEvent("click", true, true);
                hj.dispatchEvent(bX)
            }
        }
    };
    u.pN = function(cD) {
        var xJ = {
            sto: "普通快递",
            common: "普通快递",
            yd: "普通快递",
            ems_hz: "普通快递",
            shunfeng: "顺丰快递",
            "shunfeng-tc": "顺丰快递",
            zjs: "宅急送",
            ems_posthaste: "EMS特快",
            eyb: "E邮宝"
        };
        return xJ[cD]
    }
})(); (function() {
    var pW = NEJ.P,
    ll = NEJ.O,
    dl = pW("nej.e"),
    jn = pW("nej.v"),
    il = pW("nej.ui"),
    xC = pW("yxp.ui"),
    xN;
    var ec = dl.fR(".#<uispace> img{float:left;margin-left:5px;vertical-align:top;cursor:pointer;}.#<uispace> .tip{position:absolute;left:167px;top:-12px;white-space:nowrap;}.#<uispace> .outer{float:left;height:48px;padding-right:6px;background-position:right -320px;}.#<uispace> .inner{float:left;height:48px;line-height:48px;background-position:0 -270px;padding:0 8px 0 20px;}.#<uispace> .fcw{padding-right:5px;color:#d65600;font-weight:bold;}");
    var zZ = dl.eY('<div class="f-cb f-pr" style="width:145px;"><span class="z-star"><img class="z-tag" src="http://img.yxp.126.net/a7z18WBYknBKhgTa4MM3KA==/742170349040719.png" alt="" width="24" height="23" value="2"/><img class="z-tag" src="http://img.yxp.126.net/a7z18WBYknBKhgTa4MM3KA==/742170349040719.png" alt="" width="24" height="23" value="4"/><img class="z-tag" src="http://img.yxp.126.net/a7z18WBYknBKhgTa4MM3KA==/742170349040719.png" alt="" width="24" height="23" value="6"/><img class="z-tag" src="http://img.yxp.126.net/a7z18WBYknBKhgTa4MM3KA==/742170349040719.png" alt="" width="24" height="23" value="8"/><img class="z-tag" src="http://img.yxp.126.net/a7z18WBYknBKhgTa4MM3KA==/742170349040719.png" alt="" width="24" height="23" value="10"/></span><div class="tip"><span class="outer tbg"><span class="inner tbg"><span class="fcw z-tip">提示：</span><span class="z-tip">点击星星就能打分，该打分是匿名滴。</span></span></span></div></div>');
    xC.By = NEJ.C();
    xN = xC.By.dy(il.gr, !0);
    xN.dD = function(cz) {
        this.CH(cz);
        cz = cz || ll;
        this.BY = ["2分 很烂", "4分 不好", "6分 一般", "8分 好", "10分 很好"];
        this.BA = cz.scoce || 0;
        this.Bt = cz.readOnly || false;
        this.qv = cz.onClick;
        if (!this.Bt) {
            this.eh()
        } else {
            this.BX(this.BA)
        }
    };
    xN.mA = function() {
        this.fX = ec;
        this.gs = zZ
    };
    xN.fD = function(cz) {
        this.Ev(cz)
    };
    xN.eh = function() {
        var BZ = this.sW(),
        Bp = dl.cT(this.sW(), "z-star");
        jn.cM(Bp[0], "mouseover", this.BB.cC(this, "mouseover"));
        jn.cM(Bp[0], "mouseout", this.BB.cC(this, "mouseout"));
        jn.cM(Bp[0], "click", this.BW.cC(this, Bp[0]))
    };
    xN.BW = function(hj, bX) {
        var dq = this.qv(bX);
        if ( !! dq) {
            jn.fJ(hj, "mouseover");
            jn.fJ(hj, "mouseout")
        }
    };
    xN.BB = function(dq, bX) {
        var Br = dl.cT(this.sW(), "tip");
        if (dq == "mouseover") {
            var BC = jn.dE(bX);
            if (BC.tagName.toLowerCase() != "img") return;
            var Bs = BC.getAttribute("value");
            this.BN(Bs)
        } else {
            jn.dP(bX);
            dl.dw(Br[0], "f-dn")
        }
    };
    xN.BN = function(Bs) {
        var Br = dl.cT(this.sW(), "tip"),
        cX = parseInt(Bs / 2 - 1),
        Bp = dl.cT(this.sW(), "z-tag"),
        BD = dl.cT(this.sW(), "z-tip");
        if (dl.fP(Br[0], "f-dn")) dl.nf(Br[0], "f-dn");
        if (this.Bt) dl.dw(Br[0], "f-dn");
        for (var i = 0,
        l = Bp.length; i < l; i++) {
            var BE = Bp[i];
            if (i <= cX) BE.src = "http://img.yxp.126.net/9do7SX4LmoIyUCeh2Gu1fw==/979664860355875.png";
            else BE.src = "http://img.yxp.126.net/a7z18WBYknBKhgTa4MM3KA==/742170349040719.png"
        }
        BD[0].innerHTML = this.BY[cX];
        BD[1].innerHTML = ""
    };
    xN.Ca = function() {
        return this.BA
    };
    xN.BX = function(Bs) {
        this.BN(Bs)
    };
    xN.Cb = function(Bs, dq) {
        this.Bt = dq;
        this.BX(Bs)
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("yxp.ui"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace> {text-align:right;width:420px;}.#<uispace> p.text{line-height:19px;padding:9px 0 0 38px;color:#808080;text-align:left;background:url(http://st1.yxp.126.net/rsc/img/wicons.png) -160px -80px no-repeat;font-family:"微软雅黑";font-size:14px;}.#<uispace> input.c-btn{cursor:pointer;margin-top:50px;font-weight:bold;text-align:center;font-size:18px;width:125px;height:34px;line-height:34px;background:url(http://st1.yxp.126.net/rsc/img/bg-x.png) 9999px 9999px repeat-x;border:0px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> input.sure{margin-right:15px;color:#fff;background-position:0 -50px;}.#<uispace> input.sure:hover{background-position:0 -100px;border-left:1px #759dad solid;border-right:1px #759dad solid;}.#<uispace> input.cancel{color:#767676;background-position:0 -150px;border-left:1px #d0d0d0 solid;border-right:1px #d0d0d0 solid;_border:0px;}.#<uispace> input.cancel:hover{background-position:0 -200px;}');
    var zZ = e.eY('<div class="' + ec + '"><p class="text">&nbsp;</p><input class="c-btn sure mark-sure" type="button" value="确&nbsp;定"/><input class="c-btn cancel mark-close" type="button" value="取&nbsp;消"/></div>');
    p.mT = NEJ.C();
    cH = p.mT.dy(p.gx, !0);
    dc = p.mT.dG;
    cH.zW = function(cI) {
        cI = cI || {};
        this.CU(cI)
    };
    cH.dX = function(cI) {
        dc.dX.apply(this, arguments);
        var eD = e.gn(zZ);
        this.hQ().appendChild(eD);
        this.lH = eD.getElementsByTagName("p")[0];
        this.fg = cI.sureCallBack;
        if (cI.width) e.hh(eD, "width", cI.width);
        this.eC = p.g_.ep({
            opacity: .6,
            bgc: "#000"
        })
    };
    cH.eh = function(cI) {
        dc.eh.apply(this, arguments);
        v.cM(e.cT(this.cN, "mark-sure")[0], "click", this.pj.cC(this))
    };
    cH.dD = function(cI) {
        this.CH(cI);
        if (cI.sureCallBack) this.fg = cI.sureCallBack
    };
    cH.pj = function() {
        this.dZ();
        if (this.fg) this.fg()
    };
    cH.dH = function(fu) {
        if (fu) this.lH.innerHTML = fu;
        this.eC.dH();
        dc.dH.apply(this, arguments);
        return this
    };
    cH.dZ = function() {
        this.eC.dZ();
        dc.dZ.apply(this, arguments);
        return this
    }
})();
var ZeroClipboard = {
    version: "1.0.7",
    clients: {},
    moviePath: "ZeroClipboard.swf",
    nextId: 1,
    $: function(thingy) {
        if (typeof thingy == "string") thingy = document.getElementById(thingy);
        if (!thingy.addClass) {
            thingy.hide = function() {
                this.style.display = "none"
            };
            thingy.show = function() {
                this.style.display = ""
            };
            thingy.addClass = function(name) {
                this.removeClass(name);
                this.className += " " + name
            };
            thingy.removeClass = function(name) {
                var classes = this.className.split(/\s+/);
                var idx = -1;
                for (var k = 0; k < classes.length; k++) {
                    if (classes[k] == name) {
                        idx = k;
                        k = classes.length
                    }
                }
                if (idx > -1) {
                    classes.splice(idx, 1);
                    this.className = classes.join(" ")
                }
                return this
            };
            thingy.hasClass = function(name) {
                return !! this.className.match(new RegExp("\\s*" + name + "\\s*"))
            }
        }
        return thingy
    },
    setMoviePath: function(path) {
        this.moviePath = path
    },
    dispatch: function(id, eventName, args) {
        var client = this.clients[id];
        if (client) {
            client.receiveEvent(eventName, args)
        }
    },
    register: function(id, client) {
        this.clients[id] = client
    },
    getDOMObjectPosition: function(obj, stopObj) {
        var info = {
            left: 0,
            top: 0,
            width: obj.width ? obj.width: obj.offsetWidth,
            height: obj.height ? obj.height: obj.offsetHeight
        };
        while (obj && obj != stopObj) {
            info.left += obj.offsetLeft;
            info.top += obj.offsetTop;
            obj = obj.offsetParent
        }
        return info
    },
    Client: function(elem) {
        this.handlers = {};
        this.id = ZeroClipboard.nextId++;
        this.movieId = "ZeroClipboardMovie_" + this.id;
        ZeroClipboard.register(this.id, this);
        if (elem) this.glue(elem)
    }
};
ZeroClipboard.Client.prototype = {
    id: 0,
    ready: false,
    movie: null,
    clipText: "",
    handCursorEnabled: true,
    cssEffects: true,
    handlers: null,
    glue: function(elem, appendElem, stylesToAdd) {
        this.domElement = ZeroClipboard.$(elem);
        var zIndex = 99;
        if (this.domElement.style.zIndex) {
            zIndex = parseInt(this.domElement.style.zIndex, 10) + 1
        }
        if (typeof appendElem == "string") {
            appendElem = ZeroClipboard.$(appendElem)
        } else if (typeof appendElem == "undefined") {
            appendElem = document.getElementsByTagName("body")[0]
        }
        var box = ZeroClipboard.getDOMObjectPosition(this.domElement, appendElem);
        this.div = document.createElement("div");
        var style = this.div.style;
        style.position = "absolute";
        style.left = "" + box.left + "px";
        style.top = "" + box.top + "px";
        style.width = "" + box.width + "px";
        style.height = "" + box.height + "px";
        style.zIndex = zIndex;
        if (typeof stylesToAdd == "object") {
            for (addedStyle in stylesToAdd) {
                style[addedStyle] = stylesToAdd[addedStyle]
            }
        }
        appendElem.appendChild(this.div);
        this.div.innerHTML = this.getHTML(box.width, box.height)
    },
    getHTML: function(width, height) {
        var html = "";
        var flashvars = "id=" + this.id + "&width=" + width + "&height=" + height;
        if (navigator.userAgent.match(/MSIE/)) {
            var protocol = location.href.match(/^https/i) ? "https://": "http://";
            html += '<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="' + protocol + 'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="' + width + '" height="' + height + '" id="' + this.movieId + '" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="movie" value="' + ZeroClipboard.moviePath + '" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="' + flashvars + '"/><param name="wmode" value="transparent"/></object>'
        } else {
            html += '<embed id="' + this.movieId + '" src="' + ZeroClipboard.moviePath + '" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="' + width + '" height="' + height + '" name="' + this.movieId + '" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="' + flashvars + '" wmode="transparent" />'
        }
        return html
    },
    hide: function() {
        if (this.div) {
            this.div.style.left = "-2000px"
        }
    },
    show: function() {
        this.reposition()
    },
    destroy: function() {
        if (this.domElement && this.div) {
            this.hide();
            this.div.innerHTML = "";
            var body = document.getElementsByTagName("body")[0];
            try {
                body.removeChild(this.div)
            } catch(e) {}
            this.domElement = null;
            this.div = null
        }
    },
    reposition: function(elem) {
        if (elem) {
            this.domElement = ZeroClipboard.$(elem);
            if (!this.domElement) this.hide()
        }
        if (this.domElement && this.div) {
            var box = ZeroClipboard.getDOMObjectPosition(this.domElement);
            var style = this.div.style;
            style.left = "" + box.left + "px";
            style.top = "" + box.top + "px"
        }
    },
    setText: function(newText) {
        this.clipText = newText;
        if (this.ready) this.movie.setText(newText)
    },
    addEventListener: function(eventName, func) {
        eventName = eventName.toString().toLowerCase().replace(/^on/, "");
        if (!this.handlers[eventName]) this.handlers[eventName] = [];
        this.handlers[eventName].push(func)
    },
    setHandCursor: function(enabled) {
        this.handCursorEnabled = enabled;
        if (this.ready) this.movie.setHandCursor(enabled)
    },
    setCSSEffects: function(enabled) {
        this.cssEffects = !!enabled
    },
    receiveEvent: function(eventName, args) {
        eventName = eventName.toString().toLowerCase().replace(/^on/, "");
        switch (eventName) {
        case "load":
            this.movie = document.getElementById(this.movieId);
            if (!this.movie) {
                var self = this;
                setTimeout(function() {
                    self.receiveEvent("load", null)
                },
                1);
                return
            }
            if (!this.ready && navigator.userAgent.match(/Firefox/) && navigator.userAgent.match(/Windows/)) {
                var self = this;
                setTimeout(function() {
                    self.receiveEvent("load", null)
                },
                100);
                this.ready = true;
                return
            }
            this.ready = true;
            this.movie.setText(this.clipText);
            this.movie.setHandCursor(this.handCursorEnabled);
            break;
        case "mouseover":
            if (this.domElement && this.cssEffects) {
                this.domElement.addClass("hover");
                if (this.recoverActive) this.domElement.addClass("active")
            }
            break;
        case "mouseout":
            if (this.domElement && this.cssEffects) {
                this.recoverActive = false;
                if (this.domElement.hasClass("active")) {
                    this.domElement.removeClass("active");
                    this.recoverActive = true
                }
                this.domElement.removeClass("hover")
            }
            break;
        case "mousedown":
            if (this.domElement && this.cssEffects) {
                this.domElement.addClass("active")
            }
            break;
        case "mouseup":
            if (this.domElement && this.cssEffects) {
                this.domElement.removeClass("active");
                this.recoverActive = false
            }
            break
        }
        if (this.handlers[eventName]) {
            for (var idx = 0,
            len = this.handlers[eventName].length; idx < len; idx++) {
                var func = this.handlers[eventName][idx];
                if (typeof func == "function") {
                    func(this, args)
                } else if (typeof func == "object" && func.length == 2) {
                    func[0][func[1]](this, args)
                } else if (typeof func == "string") {
                    window[func](this, args)
                }
            }
        }
    }
}; (function() {
    var pW = NEJ.P,
    il = pW("yxp.page"),
    jn = pW("nej.v"),
    dl = pW("nej.e"),
    vC = pW("nej.j"),
    zB = pW("nej.u"),
    xC = pW("yxp.ui"),
    cG = null;
    il.BF = NEJ.C();
    cG = il.BF.prototype;
    cG.zW = function() {
        this.rL();
        this.BV();
        this.dX();
        dl.f$("template_topbar")
    };
    cG.rL = function() {
        if ( !! window["_jsonData"]) this.Bn = window["_jsonData"].shareBean || {};
        if ( !! window["_jsonProd"]) this.Bx = window["_jsonProd"].prodBean || {};
        if ( !! window["_serial"]) this.Bw = window["_serial"];
        this.BU = window["_tindex"];
        this.Bt = window["_readOnly"];
        this.Bv = ["Qzone", "Sina", "Qq", "Renren"];
        this.Cx = [65, 120, 120, 140];
        this.hS = false
    };
    cG.dX = function() {
        var BG = dl.cK("myshare"),
        Ba = dl.cT(BG, "z-ita"),
        Bo = dl.cT(dl.cK("twt"), "z-twt"),
        BH = dl.cT(BG, "z-copy"),
        BI = dl.cK("delshare"),
        BJ = dl.cK("share"),
        BK = dl.cK("raty"),
        BL = dl.cK("twitter");
        if ( !! BK) this.Cc = xC.By.ep({
            parent: BK,
            readOnly: this.Bt,
            scoce: this.Bn.score,
            onClick: this.BT.cC(this)
        });
        if ( !! Ba) {
            jn.cM(Ba[0], "blur", this.h_.cC(this, Ba));
            jn.cM(Ba[1], "blur", this.h_.cC(this, Ba));
            jn.cM(Ba[0], "mouseover", this.Cd.cC(this, Ba));
            jn.cM(Ba[1], "mouseover", this.Cd.cC(this, Ba));
            jn.cM(Ba[0], "focus", this.hW.cC(this));
            jn.cM(Ba[1], "focus", this.hW.cC(this));
            jn.cM(Ba[1], "keyup", this.hV.cC(this, Ba[1], Ba[2], 250));
            this.BM(BH[0]);
            this.BM(BH[1]);
            this.hV(Ba[1], Ba[2], 250)
        }
        if ( !! BI) {
            jn.cM(BI, "click", this.BS.cC(this))
        }
        if ( !! BJ) {
            jn.cM(BJ, "click", this.BR.cC(this))
        }
        if ( !! BL) {
            jn.cM(BL, "click", this.BQ.cC(this))
        }
        if ( !! Bo) {
            jn.cM(Bo[1], "keyup", this.hV.cC(this, Bo[1], Bo[0], this.Cx[this.BU]));
            this.hV(Bo[1], Bo[0], this.Cx[this.BU])
        }
    };
    cG.BV = function() {
        if (dl.cK("prod-flash")) {
            var eu = {};
            eu.pt = this.Bn.prodType;
            eu.templateId = this.Bn.tid;
            eu.productId = this.Bn.pid;
            eu.userId = this.Bn.userId;
            swfobject.embedSWF("http://st1.yxp.126.net/rsc/flash/albumpreview.swf", "prod-flash", "960", "588", "9.0.0", "/rsc/flash/expressInstall.swf", eu, {
                allowScriptAccess: "always",
                wmode: "transparent",
                bgcolor: "#ffffff"
            })
        }
    };
    cG.hW = function(bX) {
        var gd = jn.dE(bX);
        dl.dw(gd, "itac")
    };
    cG.Cd = function(hj, bX) {
        var gd = jn.dE(bX);
        if (dl.fP(gd, "itahover")) {
            dl.nf(gd, "itahover")
        }
        if (gd == hj[1] && dl.fP(hj[2], "f-vh")) {
            dl.nf(hj[2], "f-vh")
        }
    };
    cG.h_ = function(hj, bX) {
        var gd = jn.dE(bX);
        if (zB.FJ(hj[0].value) > 40) {
            xC.oi.ep({
                parent: document.body
            }).dH("作品名称字数不能超过20！");
            return false
        } else if (zB.FJ(hj[1].value) > 500) {
            xC.oi.ep({
                parent: document.body
            }).dH("作品故事字数不能超过250！");
            return false
        }
        $.post("/my/productshare/update/", {
            pid: this.Bn.pid,
            pName: hj[0].value.trim(),
            pStory: hj[1].value.trim()
        },
        $.proxy(function(cA) {
            if (cA.result == 1) {
                xC.oi.ep({
                    parent: document.body
                }).dH("修改作品信息失败！")
            } else if (cA.result != 1 && gd.value.trim() != "") {
                dl.dw(gd, "itahover");
                if (gd == hj[1]) dl.dw(hj[2], "f-vh");
                if (dl.fP(gd, "itac")) {
                    dl.nf(gd, "itac")
                }
            }
        },
        this))
    };
    cG.BS = function() {
        xC.mT.dz({
            sureCallBack: function() {
                $.post("/productShare.do?action=delete", {
                    pid: this.Bn.pid
                },
                $.proxy(function(cA) {
                    if (cA.result == 4) {
                        xC.oi.ep({
                            parent: document.body
                        }).dH("成功删除分享作品!");
                        window.setTimeout(function() {
                            location.href = "/my/order/"
                        },
                        1e3)
                    } else if (cA.result == 3) {
                        xC.oi.ep({
                            parent: document.body
                        }).dH("删除分享作品失败!")
                    }
                },
                this))
            }.cC(this),
            title: "删除分享"
        }).dH("你确定要删除该分享作品吗？</br>删除后该页面将被彻底消除。 ")
    };
    cG.hV = function(hj, BP, size) {
        var BO = size * 2,
        Bu = Math.floor((BO - zB.FJ(hj.value)) / 2);
        if (Bu >= 0) BP.innerHTML = '还能输入<span class="size">' + Bu + "</span>字";
        else BP.innerHTML = '超出<span class="size" style="color:#E56C0A;">' + -Bu + "</span>字"
    };
    cG.BM = function(hj) {
        var clip = new ZeroClipboard.Client;
        ZeroClipboard.setMoviePath("/rsc/flash/ZeroClipboard.swf");
        clip.setText(hj.parentNode.previousSibling.value);
        clip.glue(hj);
        clip.addEventListener("onComplete", my_complete);
        function my_complete() {
            xC.oi.ep({
                parent: document.body
            }).dH("复制成功！")
        }
    };
    cG.BT = function(bX) {
        if (this.hS == true) {
            xC.oi.ep({
                parent: document.body
            }).dH("亲，您已经评论过了哦");
            return false
        }
        var gd = jn.dE(bX),
        zV = gd.getAttribute("value");
        $.ajaxSetup({
            async: false
        });
        $.post("/productShare.do?action=score", {
            pid: this.Bn.pid,
            score: parseInt(zV)
        },
        $.proxy(function(cA) {
            if (cA.result == 6) {
                xC.oi.ep({
                    parent: document.body
                }).dH("亲，您已经评论过了哦");
                this.Cc.Cb(cA.score, true);
                this.hS = true
            } else if (cA.result == 7) {
                xC.oi.ep({
                    parent: document.body
                }).dH("亲！您不能自己给自己打分的哦！");
                this.hS = true
            } else if (cA.result == 8) {
                var Ce = dl.cK("score");
                Ce.innerHTML = "作品评分：<span class='num f-fs4'>" + cA.score + "</span><span class='num'>分</span>（已评分<span class='num'>" + zV + "</span>分）";
                this.Cc.Cb(zV, true);
                this.hS = true
            } else if (cA.result == 9) {
                xC.oi.ep({
                    parent: document.body
                }).dH("打分失败，请重试！");
                this.hS = false
            }
        },
        this));
        return this.hS
    };
    cG.BR = function(bX) {
        var gd = jn.dE(bX),
        cX = gd.getAttribute("value");
        if (gd.tagName.toLowerCase() != "a") return;
        jn.dP(bX);
        window.open("/twitter.do?action=index&next=share&app=" + this.Bv[cX] + "&param=" + this.Bw);
        return false
    };
    cG.BQ = function() {
        var Bo = dl.cT(dl.cK("twt"), "z-twt"),
        Bq = this.BU,
        Cf = this.Bv[Bq],
        gF = null,
        cU = null,
        Bu = Math.floor((this.Cx[Bq] * 2 - zB.FJ(Bo[1].value)) / 2);
        if (Bo[1].value.trim() == "") {
            xC.oi.ep({
                parent: document.body
            }).dH("转发内容不能为空！");
            return false
        }
        if (Bu < 0) {
            xC.oi.ep({
                parent: document.body
            }).dH("转发内容字数过多！");
            return false
        }
        if (Bq == 1 || Bq == 2) {
            gF = encodeURIComponent(Bo[1].value.trim() + " @网易印像派 http://yxp.163.com/my/productshare/view/?serial=" + this.Bw);
            cU = this.Bx.preview
        } else if (Bq == 3 || Bq == 0) {
            gF = encodeURIComponent(Bo[1].value.trim());
            cU = "http://yxp.163.com/my/productshare/view/?serial=" + this.Bw
        }
        $.post("/twitter.do?action=post", {
            app: Cf,
            status: gF,
            url: cU
        },
        $.proxy(function(cA) {
            if (cA.result.code == 0) {
                location.href = "/my/productshare/update/?pid=" + this.Bx.id + "&share=" + Bq
            } else {
                xC.oi.ep({
                    parent: document.body
                }).dH("网络问题，转发失败！" + cA.result.code)
            }
        },
        this))
    };
    new il.BF
})(); (function() {
    var e = NEJ.P("nej.e"),
    p = NEJ.P("yxp.ut"),
    fl = null;
    p.fM = NEJ.C();
    fl = p.fM.dy(nej.ut.et, !0);
    var lC = "仅剩：${dn}天${Hnn}小时${Mnn}分${Snn}秒";
    var cZ = function(value, len) {
        value = "" + value;
        if (value.length >= len) {
            return value
        }
        value = "0000000000" + value;
        return value.substr(value.length - len)
    };
    fl.zW = function(cz) {
        var iB;
        this.cN = e.cK(cz.parent);
        this.eP = cz.until;
        iB = cz.template || lC;
        this.lM = e.ju(iB);
        this.iy();
        this.CU(cz)
    };
    fl.iy = function() {
        var cA, dV;
        if (this.eP < 0) {
            this.eP = 0
        }
        cA = this.jQ(this.eP);
        dV = e.gc(this.lM, cA);
        this.cN.innerHTML = dV;
        if (this.eP > 0) {
            this.eP -= 1e3;
            window.setTimeout(this.iy.cC(this), 1e3)
        }
    };
    fl.jQ = function(eO) {
        var eH, eG, eE, eQ, eT, eU, eV, dp;
        eH = Math.floor(eO / 1e3);
        eG = Math.floor(eO / (1e3 * 60));
        eE = Math.floor(eO / (1e3 * 60 * 60));
        eQ = Math.floor(eO / (1e3 * 60 * 60 * 24));
        eT = Math.floor(eH % 60);
        eU = Math.floor(eG % 60);
        eV = Math.floor(eE % 24);
        dp = {
            sn: eH,
            snn: cZ(eH, 2),
            snnn: cZ(eH, 3),
            snnnn: cZ(eH, 4),
            Sn: eT,
            Snn: cZ(eT, 2),
            Snnn: cZ(eT, 3),
            Snnnn: cZ(eT, 4),
            mn: eG,
            mnn: cZ(eG, 2),
            mnnn: cZ(eG, 3),
            mnnnn: cZ(eG, 4),
            Mn: eU,
            Mnn: cZ(eU, 2),
            Mnnn: cZ(eU, 3),
            Mnnnn: cZ(eU, 4),
            hn: eE,
            hnn: cZ(eE, 2),
            hnnn: cZ(eE, 3),
            hnnnn: cZ(eE, 4),
            Hn: eV,
            Hnn: cZ(eV, 2),
            Hnnn: cZ(eV, 3),
            Hnnnn: cZ(eV, 4),
            dn: eQ,
            dnn: cZ(eQ, 2),
            dnnn: cZ(eQ, 3),
            dnnnn: cZ(eQ, 4)
        };
        return dp
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("yxp.ui"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace> {text-align:right;width:420px;}.#<uispace> p.text{line-height:19px;padding:9px 0 0 38px;color:#808080;text-align:left;background:url(http://st1.yxp.126.net/rsc/img/wicons.png) -160px -80px no-repeat;font-family:"微软雅黑";font-size:14px;}.#<uispace> input.c-btn{cursor:pointer;margin-top:50px;font-weight:bold;text-align:center;font-size:18px;width:125px;height:34px;line-height:34px;background:url(http://st1.yxp.126.net/rsc/img/bg-x.png) 9999px 9999px repeat-x;border:0px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> input.sure{margin-right:15px;color:#fff;background-position:0 -50px;}.#<uispace> input.sure:hover{background-position:0 -100px;border-left:1px #759dad solid;border-right:1px #759dad solid;}.#<uispace> input.cancel{color:#767676;background-position:0 -150px;border-left:1px #d0d0d0 solid;border-right:1px #d0d0d0 solid;_border:0px;}.#<uispace> input.cancel:hover{background-position:0 -200px;}');
    var zZ = e.eY('<div class="' + ec + '"><p class="text">&nbsp;</p><input class="c-btn sure mark-sure" type="button" value="&nbsp;"/><input class="c-btn cancel mark-cancel" type="button" value="&nbsp;"/></div>');
    p.qa = NEJ.C();
    cH = p.qa.dy(p.gx, !0);
    dc = p.qa.dG;
    cH.zW = function(cI) {
        cI = cI || {};
        this.CU(cI)
    };
    cH.dD = function(cI) {
        this.CH(cI);
        var za = e.cT(this.cN, "mark-sure")[0],
        yb = e.cT(this.cN, "mark-cancel")[0];
        if (cI.sureName) za.value = cI.sureName || "确&nbsp;定";
        if (cI.cancelName) yb.value = cI.cancelName || "取消&nbsp;取消";
        if (cI.sureCallBack) this.fg = cI.sureCallBack;
        if (cI.cancelCallBack) this.qb = cI.cancelCallBack
    };
    cH.dX = function(cI) {
        dc.dX.apply(this, arguments);
        var eD = e.gn(zZ);
        this.hQ().appendChild(eD);
        this.lH = eD.getElementsByTagName("p")[0];
        this.fg = cI.sureCallBack;
        this.qb = cI.cancelCallBack;
        if (cI.width) e.hh(eD, "width", cI.width);
        this.eC = p.g_.ep({
            opacity: .6,
            bgc: "#000"
        })
    };
    cH.eh = function(cI) {
        dc.eh.apply(this, arguments);
        v.cM(e.cT(this.cN, "mark-sure")[0], "click", this.pj.cC(this));
        v.cM(e.cT(this.cN, "mark-cancel")[0], "click", this.zb.cC(this))
    };
    cH.pj = function() {
        this.dZ();
        if (this.fg) this.fg()
    };
    cH.zb = function() {
        this.dZ();
        if (this.qb) this.qb()
    };
    cH.dH = function(fu) {
        if (fu) this.lH.innerHTML = fu;
        this.eC.dH();
        dc.dH.apply(this, arguments);
        return this
    };
    cH.dZ = function() {
        this.eC.dZ();
        dc.dZ.apply(this, arguments);
        return this
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("nej.ut"),
    yut = NEJ.P("yxp.ut"),
    cH = null;
    yut.vi = NEJ.C();
    cH = yut.vi.dy(p.et, !0);
    cH.dD = function(cz) {
        this.CH(cz);
        this.vf = cz.pro;
        this.ve = cz.city;
        this.vd = cz.sec;
        this.dX(cz);
        this.eh(cz)
    };
    cH.dX = function(cz) {
        this.An = cz.sPro;
        this.uY = cz.sCity;
        this.uX = cz.sSec
    };
    cH.eh = function(cz) {
        v.cM(cz.sPro, "change", this.vm.cC(this));
        v.cM(cz.sCity, "change", this.vn.cC(this));
        v.cM(cz.sSec, "change", this.vo.cC(this));
        this.vg({
            select: this.An,
            data: window["g_prov"],
            name: "省",
            value: this.vf
        });
        this.Am()
    };
    cH.vm = function(bX) {
        v.dP(bX);
        if (this.An.selectedIndex == 0) {
            this.uZ({
                select: this.uY,
                options: [new Option("-请选择市-", "-请选择市-")]
            });
            this.uZ({
                select: this.uX,
                options: [new Option("-请选择区-", "-请选择区-")]
            })
        } else {
            this.vf = this.An.options[this.An.selectedIndex].innerHTML;
            this.ve = this.vd = null;
            this.Am()
        }
    };
    cH.vn = function(bX) {
        v.dP(bX);
        if (this.uY.selectedIndex == 0) {
            this.uZ({
                select: this.uX,
                options: [new Option("-请选择区-", "-请选择区-")]
            })
        } else {
            this.ve = this.uY.options[this.uY.selectedIndex].innerHTML;
            this.vd = null;
            this.Am()
        }
    };
    cH.vo = function(bX) {
        v.dP(bX);
        if (this.uX.selectedIndex != 0) {
            this.vd = this.uX.options[this.uX.selectedIndex].innerHTML
        }
    };
    cH.Am = function() {
        var vj = window["g_city"][this.vf];
        this.vg({
            select: this.uY,
            name: "市",
            data: vj || [],
            value: this.ve
        });
        this.vg({
            select: this.uX,
            name: "区",
            data: vj ? window["g_sec"][this.vf + "-" + this.ve] || [] : [],
            value: this.vd
        })
    };
    cH.vg = function(cJ) {
        var cz = [new Option("-请选择" + cJ.name + "-", "-请选择" + cJ.name + "-")],
        xK = 0;
        for (var i = 0; i < cJ.data.length; i++) {
            var cI = new Option(cJ.data[i], cJ.data[i]);
            if (cJ.data[i] == cJ.value) {
                xK = i + 1
            }
            cz.push(cI)
        }
        this.uZ({
            select: cJ.select,
            options: cz,
            selectedIndex: xK
        })
    };
    cH.uZ = function(cJ) {
        for (var i = cJ.select.options.length - 1; i >= 0; i--) e.fk(cJ.select.options[i], false);
        for (var j = 0; j < cJ.options.length; j++) cJ.select.options[j] = cJ.options[j];
        cJ.select.selectedIndex = cJ.selectedIndex || 0
    };
    window["g_prov"] = ["安徽", "北京", "福建", "甘肃", "广东", "广西", "贵州", "海南", "河北", "河南", "黑龙江", "湖北", "湖南", "吉林", "江苏", "江西", "辽宁", "内蒙古", "宁夏", "青海", "山东", "山西", "陕西", "上海", "四川", "天津", "西藏", "新疆", "云南", "浙江", "重庆"];
    window["g_city"] = {
        "安徽": ["安庆市", "蚌埠市", "亳州市", "巢湖市", "池州市", "滁州市", "阜阳市", "合肥市", "淮北市", "淮南市", "黄山市", "六安市", "马鞍山市", "宿州市", "铜陵市", "芜湖市", "宣城市"],
        "北京": ["北京市"],
        "福建": ["福州市", "龙岩市", "南平市", "宁德市", "莆田市", "泉州市", "三明市", "厦门市", "漳州市"],
        "甘肃": ["白银市", "定西市", "甘南州", "嘉峪关市", "金昌市", "酒泉市", "兰州市", "临夏州", "陇南市", "平凉市", "庆阳市", "天水市", "武威市", "张掖市"],
        "广东": ["潮州市", "东莞市", "佛山市", "广州市", "河源市", "惠州市", "江门市", "揭阳市", "茂名市", "梅州市", "清远市", "汕头市", "汕尾市", "韶关市", "深圳市", "阳江市", "云浮市", "湛江市", "肇庆市", "中山市", "珠海市"],
        "广西": ["百色市", "北海市", "崇左市", "防城港市", "贵港市", "桂林市", "河池市", "贺州市", "来宾市", "柳州市", "南宁市", "钦州市", "梧州市", "玉林市"],
        "贵州": ["安顺市", "毕节地区", "贵阳市", "六盘水市", "黔东南州", "黔南州", "黔西南州", "铜仁地区", "遵义市"],
        "海南": ["海口市", "三亚市", "省直辖"],
        "河北": ["保定市", "沧州市", "承德市", "邯郸市", "衡水市", "廊坊市", "秦皇岛市", "石家庄市", "唐山市", "邢台市", "张家口市"],
        "河南": ["安阳市", "鹤壁市", "焦作市", "开封市", "洛阳市", "漯河市", "南阳市", "平顶山市", "濮阳市", "三门峡市", "商丘市", "省直辖", "新乡市", "信阳市", "许昌市", "郑州市", "周口市", "驻马店市"],
        "黑龙江": ["大庆市", "大兴安岭地区", "哈尔滨市", "鹤岗市", "黑河市", "鸡西市", "佳木斯市", "牡丹江市", "七台河市", "齐齐哈尔市", "双鸭山市", "绥化市", "伊春市"],
        "湖北": ["鄂州市", "恩施州", "黄冈市", "黄石市", "荆门市", "荆州市", "省直辖", "十堰市", "随州市", "武汉市", "咸宁市", "襄樊市", "孝感市", "宜昌市"],
        "湖南": ["长沙市", "常德市", "郴州市", "衡阳市", "怀化市", "娄底市", "邵阳市", "湘潭市", "湘西州", "益阳市", "永州市", "岳阳市", "张家界市", "株洲市"],
        "吉林": ["白城市", "白山市", "长春市", "吉林市", "辽源市", "四平市", "松原市", "通化市", "延边州"],
        "江苏": ["常州市", "淮安市", "连云港市", "南京市", "南通市", "苏州市", "宿迁市", "泰州市", "无锡市", "徐州市", "盐城市", "扬州市", "镇江市"],
        "江西": ["抚州市", "赣州市", "吉安市", "景德镇市", "九江市", "南昌市", "萍乡市", "上饶市", "新余市", "宜春市", "鹰潭市"],
        "辽宁": ["鞍山市", "本溪市", "朝阳市", "大连市", "丹东市", "抚顺市", "阜新市", "葫芦岛市", "锦州市", "辽阳市", "盘锦市", "沈阳市", "铁岭市", "营口市"],
        "内蒙古": ["阿拉善盟", "巴彦淖尔市", "包头市", "赤峰市", "鄂尔多斯市", "呼和浩特市", "呼伦贝尔市", "通辽市", "乌海市", "乌兰察布市", "锡林郭勒盟", "兴安盟"],
        "宁夏": ["固原市", "石嘴山市", "吴忠市", "银川市", "中卫市"],
        "青海": ["果洛州", "海北州", "海东地区", "海南州", "海西州", "黄南州", "西宁市", "玉树州"],
        "山东": ["滨州市", "德州市", "东营市", "菏泽市", "济南市", "济宁市", "莱芜市", "聊城市", "临沂市", "青岛市", "日照市", "泰安市", "威海市", "潍坊市", "烟台市", "枣庄市", "淄博市"],
        "山西": ["长治市", "大同市", "晋城市", "晋中市", "临汾市", "吕梁地区", "朔州市", "太原市", "忻州市", "阳泉市", "运城市"],
        "陕西": ["安康市", "宝鸡市", "汉中市", "商洛市", "铜川市", "渭南市", "西安市", "咸阳市", "延安市", "榆林市"],
        "上海": ["上海市"],
        "四川": ["阿坝州", "巴中市", "成都市", "达州市", "德阳市", "甘孜州", "广安市", "广元市", "乐山市", "凉山州", "泸州市", "眉山市", "绵阳市", "内江市", "南充市", "攀枝花市", "遂宁市", "雅安市", "宜宾市", "资阳市", "自贡市"],
        "天津": ["天津市"],
        "西藏": ["阿里地区", "昌都地区", "拉萨市", "林芝地区", "那曲地区", "日喀则地区", "山南地区"],
        "新疆": ["阿克苏地区", "阿勒泰地区", "巴音郭楞州", "博尔塔拉州", "昌吉州", "哈密地区", "和田地区", "喀什地区", "克拉玛依市", "克孜勒苏州", "省直辖", "塔城地区", "吐鲁番地区", "乌鲁木齐市", "伊犁州"],
        "云南": ["保山市", "楚雄州", "大理州", "德宏州", "迪庆州", "红河州", "昆明市", "丽江市", "临沧市", "怒江州", "普洱市", "曲靖市", "文山州", "西双版纳州", "玉溪市", "昭通市"],
        "浙江": ["杭州市", "湖州市", "嘉兴市", "金华市", "丽水市", "宁波市", "衢州市", "绍兴市", "台州市", "温州市", "舟山市"],
        "重庆": ["重庆市"],
        "澳门": ["澳门半岛", "氹仔", "路环"],
        "香港": ["香港岛", "九龙半岛", "新界", "离岛"],
        "台湾": ["台北市", "高雄市", "基隆市", "台中市", "台南市", "新竹市", "嘉义市", "台北县", "新竹县", "桃园县", "苗栗县", "彰化县", "南投县", "嘉义县", "云林县"]
    };
    window["g_sec"] = {
        "安徽-安庆市": ["枞阳县", "大观区", "怀宁县", "其他地区", "潜山县", "宿松县", "太湖县", "桐城市", "望江县", "宜秀区", "迎江区", "岳西县"],
        "安徽-蚌埠市": ["蚌山区", "固镇县", "怀远县", "淮上区", "龙子湖区", "其他地区", "五河县", "禹会区"],
        "安徽-亳州市": ["利辛县", "蒙城县", "其他地区", "谯城区", "涡阳县"],
        "安徽-巢湖市": ["含山县", "居巢区", "庐江县", "其他地区", "无为县"],
        "安徽-池州市": ["东至县", "贵池区", "其他地区", "青阳县", "石台县"],
        "安徽-滁州市": ["定远县", "凤阳县", "来安县", "琅琊区", "明光市", "南谯区", "其他地区", "全椒县", "天长市"],
        "安徽-阜阳市": ["阜南县", "界首市", "临泉县", "其他地区", "太和县", "颍东区", "颍泉区", "颍上县", "颍州区"],
        "安徽-合肥市": ["包河区", "长丰县", "肥东县", "肥西县", "高新区", "庐阳区", "其他地区", "蜀山区", "瑶海区", "中区"],
        "安徽-淮北市": ["杜集区", "烈山区", "其他地区", "濉溪县", "相山区"],
        "安徽-淮南市": ["八公山区", "大通区", "凤台县", "潘集区", "其他地区", "田家庵区", "谢家集区"],
        "安徽-黄山市": ["黄山区", "徽州区", "祁门县", "其他地区", "屯溪区", "歙县", "休宁县", "黟县"],
        "安徽-六安市": ["霍邱县", "霍山县", "金安区", "金寨县", "其他地区", "寿县", "舒城县", "裕安区"],
        "安徽-马鞍山市": ["当涂县", "花山区", "金家庄区", "其他地区", "和县", "雨山区"],
        "安徽-宿州市": ["砀山县", "灵璧县", "其他地区", "泗县", "萧县", "埇桥区"],
        "安徽-铜陵市": ["郊区", "其他地区", "狮子山区", "铜官山区", "铜陵县"],
        "安徽-芜湖市": ["繁昌县", "镜湖区", "鸠江区", "南陵县", "其他地区", "三山区", "芜湖县", "弋江区"],
        "安徽-宣城市": ["广德县", "绩溪县", "泾县", "旌德县", "郎溪县", "宁国市", "其他地区", "宣州区"],
        "北京-北京市": ["昌平区", "朝阳区", "大兴区", "东城区", "房山区", "丰台区", "海淀区", "怀柔区", "门头沟区", "密云县", "平谷区", "其他地区", "石景山区", "顺义区", "通州区", "西城区", "延庆县"],
        "福建-福州市": ["仓山区", "长乐市", "福清市", "鼓楼区", "晋安区", "连江县", "罗源县", "马尾区", "闽侯县", "闽清县", "平潭县", "其他地区", "台江区", "永泰县"],
        "福建-龙岩市": ["长汀县", "连城县", "其他地区", "上杭县", "武平县", "新罗区", "永定县", "漳平市"],
        "福建-南平市": ["光泽县", "建瓯市", "建阳市", "浦城县", "其他地区", "邵武市", "顺昌县", "松溪县", "武夷山市", "延平区", "政和县"],
        "福建-宁德市": ["福安市", "福鼎市", "古田县", "蕉城区", "屏南县", "其他地区", "寿宁县", "霞浦县", "柘荣县", "周宁县"],
        "福建-莆田市": ["城厢区", "涵江区", "荔城区", "其他地区", "仙游县", "秀屿区"],
        "福建-泉州市": ["安溪县", "德化县", "丰泽区", "惠安县", "金门县", "晋江市", "鲤城区", "洛江区", "南安市", "其他地区", "泉港区", "石狮市", "永春县"],
        "福建-三明市": ["大田县", "建宁县", "将乐县", "梅列区", "明溪县", "宁化县", "其他地区", "清流县", "三元区", "沙县", "泰宁县", "永安市", "尤溪县"],
        "福建-厦门市": ["海沧区", "湖里区", "集美区", "其他地区", "思明区", "同安区", "翔安区"],
        "福建-漳州市": ["长泰县", "东山县", "华安县", "龙海市", "龙文区", "南靖县", "平和县", "其他地区", "芗城区", "云霄县", "漳浦县", "诏安县"],
        "甘肃-白银市": ["白银区", "会宁县", "景泰县", "靖远县", "平川区", "其他地区"],
        "甘肃-定西市": ["安定区", "临洮县", "陇西县", "岷县", "其他地区", "通渭县", "渭源县", "漳县"],
        "甘肃-甘南州": ["迭部县", "合作市", "临潭县", "碌曲县", "玛曲县", "其他地区", "夏河县", "舟曲县", "卓尼县"],
        "甘肃-嘉峪关市": ["嘉峪关市"],
        "甘肃-金昌市": ["金川区", "其他地区", "永昌县"],
        "甘肃-酒泉市": ["阿克塞哈萨克族自治县", "敦煌市", "瓜州县", "金塔县", "其他地区", "肃北蒙古族自治县", "肃州区", "玉门市"],
        "甘肃-兰州市": ["安宁区", "城关区", "皋兰县", "红古区", "七里河区", "其他地区", "西固区", "永登县", "榆中县"],
        "甘肃-临夏州": ["东乡族自治县", "广河县", "和政县", "积石山保安族东乡族撒拉族自治县", "康乐县", "临夏市", "临夏县", "其他地区", "永靖县"],
        "甘肃-陇南市": ["成县", "宕昌县", "徽县", "康县", "礼县", "两当县", "其他地区", "文县", "武都区", "西和县"],
        "甘肃-平凉市": ["崇信县", "华亭县", "泾川县", "静宁县", "崆峒区", "灵台县", "其他地区", "庄浪县"],
        "甘肃-庆阳市": ["合水县", "华池县", "环县", "宁县", "其他地区", "庆城县", "西峰区", "镇原县", "正宁县"],
        "甘肃-天水市": ["甘谷县", "麦积区", "其他地区", "秦安县", "秦州区", "清水县", "武山县", "张家川回族自治县"],
        "甘肃-武威市": ["古浪县", "凉州区", "民勤县", "其他地区", "天祝藏族自治县"],
        "甘肃-张掖市": ["甘州区", "高台县", "临泽县", "民乐县", "其他地区", "山丹县", "肃南裕固族自治县"],
        "广东-潮州市": ["潮安县", "枫溪区", "其他地区", "饶平县", "湘桥区"],
        "广东-东莞市": ["东莞市"],
        "广东-佛山市": ["禅城区", "高明区", "南海区", "其他地区", "三水区", "顺德区"],
        "广东-广州市": ["白云区", "从化市", "番禺区", "海珠区", "花都区", "黄埔区", "荔湾区", "萝岗区", "南沙区", "其他地区", "天河区", "越秀区", "增城市"],
        "广东-河源市": ["东源县", "和平县", "连平县", "龙川县", "其他地区", "源城区", "紫金县"],
        "广东-惠州市": ["博罗县", "惠城区", "惠东县", "惠阳区", "龙门县", "其他地区"],
        "广东-江门市": ["恩平市", "鹤山市", "江海区", "开平市", "蓬江区", "其他地区", "台山市", "新会区"],
        "广东-揭阳市": ["东山区", "惠来县", "揭东县", "揭西县", "普宁市", "其他地区", "榕城区"],
        "广东-茂名市": ["电白县", "高州市", "化州市", "茂港区", "茂南区", "其他地区", "信宜市"],
        "广东-梅州市": ["大埔县", "丰顺县", "蕉岭县", "梅江区", "梅县", "平远县", "其他地区", "五华县", "兴宁市"],
        "广东-清远市": ["佛冈县", "连南瑶族自治县", "连山壮族瑶族自治县", "连州市", "其他地区", "清城区", "清新县", "阳山县", "英德市"],
        "广东-汕头市": ["潮南区", "潮阳区", "澄海区", "濠江区", "金平区", "龙湖区", "南澳县", "其他地区"],
        "广东-汕尾市": ["城区", "海丰县", "陆丰市", "陆河县", "其他地区"],
        "广东-韶关市": ["乐昌市", "南雄市", "其他地区", "曲江区", "仁化县", "乳源瑶族自治县", "始兴县", "翁源县", "武江区", "新丰县", "浈江区"],
        "广东-深圳市": ["宝安区", "福田区", "龙岗区", "罗湖区", "南山区", "其他地区", "盐田区"],
        "广东-阳江市": ["江城区", "其他地区", "阳春市", "阳东县", "阳西县"],
        "广东-云浮市": ["罗定市", "其他地区", "新兴县", "郁南县", "云安县", "云城区"],
        "广东-湛江市": ["赤坎区", "雷州市", "廉江市", "麻章区", "坡头区", "其他地区", "遂溪县", "吴川市", "霞山区", "徐闻县"],
        "广东-肇庆市": ["德庆县", "鼎湖区", "端州区", "封开县", "高要市", "广宁县", "怀集县", "其他地区", "四会市"],
        "广东-中山市": ["中山市"],
        "广东-珠海市": ["斗门区", "金湾区", "其他地区", "香洲区"],
        "广西-百色市": ["德保县", "靖西县", "乐业县", "凌云县", "隆林各族自治县", "那坡县", "平果县", "其他地区", "田东县", "田林县", "田阳县", "西林县", "右江区"],
        "广西-北海市": ["海城区", "合浦县", "其他地区", "铁山港区", "银海区"],
        "广西-崇左市": ["大新县", "扶绥县", "江洲区", "龙州县", "宁明县", "凭祥市", "其他地区", "天等县"],
        "广西-防城港市": ["东兴市", "防城区", "港口区", "其他地区", "上思县"],
        "广西-贵港市": ["港北区", "港南区", "桂平市", "平南县", "其他地区", "覃塘区"],
        "广西-桂林市": ["叠彩区", "恭城瑶族自治县", "灌阳县", "荔浦县", "临桂县", "灵川县", "龙胜各族自治县", "平乐县", "七星区", "其他地区", "全州县", "象山区", "兴安县", "秀峰区", "雁山区", "阳朔县", "永福县", "资源县"],
        "广西-河池市": ["巴马瑶族自治县", "大化瑶族自治县", "东兰县", "都安瑶族自治县", "凤山县", "环江毛南族自治县", "金城江区", "罗城仫佬族自治县", "南丹县", "其他地区", "天峨县", "宜州市"],
        "广西-贺州市": ["八步区", "富川瑶族自治县", "其他地区", "昭平县", "钟山县"],
        "广西-来宾市": ["合山市", "金秀瑶族自治县", "其他地区", "武宣县", "象州县", "忻城县", "兴宾区"],
        "广西-柳州市": ["城中区", "柳北区", "柳城县", "柳江县", "柳南区", "鹿寨县", "其他地区", "融安县", "融水苗族自治县", "三江侗族自治县", "鱼峰区"],
        "广西-南宁市": ["宾阳县", "横县", "江南区", "良庆区", "隆安县", "马山县", "其他地区", "青秀区", "上林县", "武鸣县", "西乡塘区", "兴宁区", "邕宁区"],
        "广西-钦州市": ["灵山县", "浦北县", "其他地区", "钦北区", "钦南区"],
        "广西-梧州市": ["苍梧县", "岑溪市", "长洲区", "蝶山区", "蒙山县", "其他地区", "藤县", "万秀区"],
        "广西-玉林市": ["北流市", "博白县", "陆川县", "其他地区", "容县", "兴业县", "玉州区"],
        "贵州-安顺市": ["关岭布依族苗族自治县", "平坝县", "普定县", "其他地区", "西秀区", "镇宁布依族苗族自治县", "紫云苗族布依族自治县"],
        "贵州-毕节地区": ["毕节市", "大方县", "赫章县", "金沙县", "纳雍县", "其他地区", "黔西县", "威宁彝族回族苗族自治县", "织金县"],
        "贵州-贵阳市": ["白云区", "花溪区", "金阳开发区", "开阳县", "南明区", "其他地区", "清镇市", "乌当区", "息烽县", "小河区", "修文县", "云岩区"],
        "贵州-六盘水市": ["六枝特区", "盘县", "其他地区", "水城县", "钟山区"],
        "贵州-黔东南州": ["岑巩县", "从江县", "丹寨县", "黄平县", "剑河县", "锦屏县", "凯里市", "雷山县", "黎平县", "麻江县", "其他地区", "榕江县", "三穗县", "施秉县", "台江县", "天柱县", "镇远县"],
        "贵州-黔南州": ["长顺县", "都匀市", "独山县", "福泉市", "贵定县", "惠水县", "荔波县", "龙里县", "罗甸县", "平塘县", "其他地区", "三都水族自治县", "瓮安县"],
        "贵州-黔西南州": ["安龙县", "册亨县", "普安县", "其他地区", "晴隆县", "望谟县", "兴仁县", "兴义市", "贞丰县"],
        "贵州-铜仁地区": ["德江县", "江口县", "其他地区", "石阡县", "思南县", "松桃苗族自治县", "铜仁市", "万山特区", "沿河土家族自治县", "印江土家族苗族自治县", "玉屏侗族自治县"],
        "贵州-遵义市": ["赤水市", "道真仡佬族苗族自治县", "凤冈县", "红花岗区", "汇川区", "湄潭县", "其他地区", "仁怀市", "绥阳县", "桐梓县", "务川仡佬族苗族自治县", "习水县", "余庆县", "正安县", "遵义县"],
        "海南-海口市": ["龙华区", "美兰区", "其他地区", "琼山区", "秀英区"],
        "海南-三亚市": ["三亚市"],
        "海南-省直辖": ["白沙黎族自治县", "保亭黎族苗族自治县", "昌江黎族自治县", "澄迈县", "儋州市", "定安县", "东方市", "乐东黎族自治县", "临高县", "陵水黎族自治县", "其他地区", "琼海市", "琼中黎族苗族自治县", "屯昌县", "万宁市", "文昌市", "五指山市", "西南中沙群岛办事处（县级）"],
        "河北-保定市": ["安国市", "安新县", "北市区", "博野县", "定兴县", "定州市", "阜平县", "高碑店市", "高开区", "高阳县", "涞水县", "涞源县", "蠡县", "满城县", "南市区", "其他地区", "清苑县", "曲阳县", "容城县", "顺平县", "唐县", "望都县", "新市区", "雄县", "徐水县", "易县", "涿州市"],
        "河北-沧州市": ["泊头市", "沧县", "东光县", "海兴县", "河间市", "黄骅市", "孟村回族自治县", "南皮县", "其他地区", "青县", "任丘市", "肃宁县", "吴桥县", "献县", "新华区", "盐山县", "运河区"],
        "河北-承德市": ["承德县", "丰宁满族自治县", "宽城满族自治县", "隆化县", "滦平县", "平泉县", "其他地区", "双滦区", "双桥区", "围场满族蒙古族自治县", "兴隆县", "鹰手营子矿区"],
        "河北-邯郸市": ["成安县", "磁县", "丛台区", "大名县", "肥乡县", "峰峰矿区", "复兴区", "馆陶县", "广平县", "邯郸县", "邯山区", "鸡泽县", "临漳县", "其他地区", "邱县", "曲周县", "涉县", "魏县", "武安市", "永年县"],
        "河北-衡水市": ["安平县", "阜城县", "故城县", "冀州市", "景县", "其他地区", "饶阳县", "深州市", "桃城区", "武强县", "武邑县", "枣强县"],
        "河北-廊坊市": ["安次区", "霸州市", "大厂回族自治县", "大城县", "固安县", "广阳区", "经济技术开发区", "其他地区", "三河市", "文安县", "香河县", "永清县"],
        "河北-秦皇岛市": ["北戴河区", "昌黎县", "抚宁县", "海港区", "经济技术开发区", "卢龙县", "其他地区", "青龙满族自治县", "山海关区"],
        "河北-石家庄市": ["长安区", "高邑县", "藁城市", "晋州市", "井陉矿区", "井陉县", "灵寿县", "鹿泉市", "栾城县", "平山县", "其他地区", "桥东区", "桥西区", "深泽县", "无极县", "辛集市", "新华区", "新乐市", "行唐县", "裕华区", "元氏县", "赞皇县", "赵县", "正定县"],
        "河北-唐山市": ["丰南区", "丰润区", "古冶区", "开平区", "乐亭县", "路北区", "路南区", "滦南县", "滦县", "其他地区", "迁安市", "迁西县", "唐海县", "玉田县", "遵化市"],
        "河北-邢台市": ["柏乡县", "广宗县", "巨鹿县", "临城县", "临西县", "隆尧县", "内丘县", "南宫市", "南和县", "宁晋县", "平乡县", "其他地区", "桥东区", "桥西区", "清河县", "任县", "沙河市", "威县", "新河县", "邢台县"],
        "河北-张家口市": ["赤城县", "崇礼县", "沽源县", "怀安县", "怀来县", "康保县", "其他地区", "桥东区", "桥西区", "尚义县", "万全县", "蔚县", "下花园区", "宣化区", "宣化县", "阳原县", "张北县", "涿鹿县"],
        "河南-安阳市": ["安阳县", "北关区", "滑县", "林州市", "龙安区", "内黄县", "其他地区", "汤阴县", "文峰区", "殷都区"],
        "河南-鹤壁市": ["鹤山区", "浚县", "其他地区", "淇滨区", "淇县", "山城区"],
        "河南-焦作市": ["博爱县", "解放区", "马村区", "孟州市", "其他地区", "沁阳市", "山阳区", "温县", "武陟县", "修武县", "中站区"],
        "河南-开封市": ["鼓楼区", "金明区", "开封县", "兰考县", "龙亭区", "其他地区", "杞县", "顺河回族区", "通许县", "尉氏县", "禹王台区"],
        "河南-洛阳市": ["瀍河回族区", "高新区", "吉利区", "涧西区", "老城区", "栾川县", "洛龙区", "洛宁县", "孟津县", "其他地区", "汝阳县", "嵩县", "西工区", "新安县", "偃师市", "伊川县", "宜阳县"],
        "河南-漯河市": ["临颍县", "其他地区", "舞阳县", "郾城区", "源汇区", "召陵区"],
        "河南-南阳市": ["邓州市", "方城县", "内乡县", "南召县", "其他地区", "社旗县", "唐河县", "桐柏县", "宛城区", "卧龙区", "西峡县", "淅川县", "新野县", "镇平县"],
        "河南-平顶山市": ["宝丰县", "郏县", "鲁山县", "其他地区", "汝州市", "石龙区", "卫东区", "舞钢市", "新华区", "叶县", "湛河区"],
        "河南-濮阳市": ["范县", "华龙区", "南乐县", "濮阳县", "其他地区", "清丰县", "台前县"],
        "河南-三门峡市": ["湖滨区", "灵宝市", "卢氏县", "其他地区", "陕县", "渑池县", "义马市"],
        "河南-商丘市": ["梁园区", "民权县", "宁陵县", "其他地区", "睢县", "睢阳区", "夏邑县", "永城市", "虞城县", "柘城县"],
        "河南-省直辖": ["济源市", "其他地区"],
        "河南-新乡市": ["长垣县", "封丘县", "凤泉区", "红旗区", "辉县市", "获嘉县", "牧野区", "其他地区", "卫滨区", "卫辉市", "新乡县", "延津县", "原阳县"],
        "河南-信阳市": ["固始县", "光山县", "淮滨县", "潢川县", "罗山县", "平桥区", "其他地区", "商城县", "浉河区", "息县", "新县"],
        "河南-许昌市": ["长葛市", "其他地区", "魏都区", "襄城县", "许昌县", "鄢陵县", "禹州市"],
        "河南-郑州市": ["登封市", "二七区", "高新区", "巩义市", "管城回族区", "惠济区", "金水区", "其他地区", "上街区", "新密市", "新郑市", "荥阳市", "郑东新区", "中牟县", "中原区"],
        "河南-周口市": ["川汇区", "郸城县", "扶沟县", "淮阳县", "鹿邑县", "其他地区", "商水县", "沈丘县", "太康县", "西华县", "项城市"],
        "河南-驻马店市": ["泌阳县", "平舆县", "其他地区", "确山县", "汝南县", "上蔡县", "遂平县", "西平县", "新蔡县", "驿城区", "正阳县"],
        "黑龙江-大庆市": ["大同区", "杜尔伯特蒙古族自治县", "红岗区", "林甸县", "龙凤区", "其他地区", "让胡路区", "萨尔图区", "肇源县", "肇州县"],
        "黑龙江-大兴安岭地区": ["呼玛县", "呼中区", "加格达奇区", "漠河县", "其他地区", "松岭区", "塔河县", "新林区"],
        "黑龙江-哈尔滨市": ["阿城区", "巴彦县", "宾县", "道里区", "道外区", "方正县", "呼兰区", "木兰县", "南岗区", "平房区", "其他地区", "尚志市", "双城市", "松北区", "通河县", "五常市", "香坊区", "延寿县", "依兰县"],
        "黑龙江-鹤岗市": ["东山区", "工农区", "萝北县", "南山区", "其他地区", "绥滨县", "向阳区", "兴安区", "兴山区"],
        "黑龙江-黑河市": ["爱辉区", "北安市", "嫩江县", "其他地区", "孙吴县", "五大连池市", "逊克县"],
        "黑龙江-鸡西市": ["城子河区", "滴道区", "恒山区", "虎林市", "鸡东县", "鸡冠区", "梨树区", "麻山区", "密山市", "其他地区"],
        "黑龙江-佳木斯市": ["东风区", "抚远县", "富锦市", "桦川县", "桦南县", "郊区", "其他地区", "前进区", "汤原县", "同江市", "向阳区", "永红区"],
        "黑龙江-牡丹江市": ["爱民区", "东安区", "东宁县", "海林市", "林口县", "穆棱市", "宁安市", "其他地区", "绥芬河市", "西安区", "阳明区"],
        "黑龙江-七台河市": ["勃利县", "其他地区", "茄子河区", "桃山区", "新兴区"],
        "黑龙江-齐齐哈尔市": ["昂昂溪区", "拜泉县", "富拉尔基区", "富裕县", "甘南县", "建华区", "克东县", "克山县", "龙江县", "龙沙区", "梅里斯达斡尔族区", "讷河市", "碾子山区", "其他地区", "泰来县", "铁锋区", "依安县"],
        "黑龙江-双鸭山市": ["宝清县", "宝山区", "集贤县", "尖山区", "岭东区", "其他地区", "饶河县", "四方台区", "友谊县"],
        "黑龙江-绥化市": ["安达市", "北林区", "海伦市", "兰西县", "明水县", "其他地区", "青冈县", "庆安县", "绥棱县", "望奎县", "肇东市"],
        "黑龙江-伊春市": ["翠峦区", "带岭区", "红星区", "嘉荫县", "金山屯区", "美溪区", "南岔区", "其他地区", "上甘岭区", "汤旺河区", "铁力市", "乌马河区", "乌伊岭区", "五营区", "西林区", "新青区", "伊春区", "友好区"],
        "湖北-鄂州市": ["鄂城区", "华容区", "梁子湖区", "其他地区"],
        "湖北-恩施州": ["巴东县", "恩施市", "鹤峰县", "建始县", "来凤县", "利川市", "其他地区", "咸丰县", "宣恩县"],
        "湖北-黄冈市": ["红安县", "黄梅县", "黄州区", "罗田县", "麻城市", "其他地区", "蕲春县", "团风县", "武穴市", "浠水县", "英山县"],
        "湖北-黄石市": ["大冶市", "黄石港区", "其他地区", "铁山区", "西塞山区", "下陆区", "阳新县"],
        "湖北-荆门市": ["东宝区", "掇刀区", "京山县", "其他地区", "沙洋县", "钟祥市"],
        "湖北-荆州市": ["公安县", "洪湖市", "监利县", "江陵县", "荆州区", "其他地区", "沙市区", "石首市", "松滋市"],
        "湖北-省直辖": ["其他地区", "潜江市", "神农架林区", "天门市", "仙桃市"],
        "湖北-十堰市": ["城区", "丹江口市", "房县", "茅箭区", "其他地区", "郧西县", "郧县", "张湾区", "竹山县", "竹溪县"],
        "湖北-随州市": ["广水市", "其他地区", "随县", "曾都区"],
        "湖北-武汉市": ["蔡甸区", "东西湖区", "汉南区", "汉阳区", "洪山区", "黄陂区", "江岸区", "江汉区", "江夏区", "其他地区", "硚口区", "青山区", "武昌区", "新洲区"],
        "湖北-咸宁市": ["赤壁市", "崇阳县", "嘉鱼县", "其他地区", "通城县", "通山县", "温泉城区", "咸安区"],
        "湖北-襄樊市": ["保康县", "樊城区", "谷城县", "老河口市", "南漳县", "其他地区", "襄城区", "襄阳区", "宜城市", "枣阳市"],
        "湖北-孝感市": ["安陆市", "大悟县", "汉川市", "其他地区", "孝昌县", "孝南区", "应城市", "云梦县"],
        "湖北-宜昌市": ["长阳土家族自治县", "当阳市", "点军区", "葛洲坝区", "开发区", "其他地区", "五峰土家族自治县", "伍家岗区", "西陵区", "猇亭区", "兴山县", "夷陵区", "宜都市", "远安县", "枝江市", "秭归县"],
        "湖南-长沙市": ["长沙县", "芙蓉区", "开福区", "浏阳市", "宁乡县", "其他地区", "天心区", "望城县", "雨花区", "岳麓区"],
        "湖南-常德市": ["安乡县", "鼎城区", "汉寿县", "津市市", "澧县", "临澧县", "其他地区", "石门县", "桃源县", "武陵区"],
        "湖南-郴州市": ["安仁县", "北湖区", "桂东县", "桂阳县", "嘉禾县", "临武县", "其他地区", "汝城县", "苏仙区", "宜章县", "永兴县", "资兴市"],
        "湖南-衡阳市": ["常宁市", "衡东县", "衡南县", "衡山县", "衡阳县", "耒阳市", "南岳区", "祁东县", "其他地区", "石鼓区", "雁峰区", "蒸湘区", "珠晖区"],
        "湖南-怀化市": ["辰溪县", "鹤城区", "洪江市", "会同县", "靖州苗族侗族自治县", "麻阳苗族自治县", "其他地区", "通道侗族自治县", "新晃侗族自治县", "溆浦县", "沅陵县", "芷江侗族自治县", "中方县"],
        "湖南-娄底市": ["冷水江市", "涟源市", "娄星区", "其他地区", "双峰县", "新化县"],
        "湖南-邵阳市": ["北塔区", "城步苗族自治县", "大祥区", "洞口县", "隆回县", "其他地区", "邵东县", "邵阳县", "双清区", "绥宁县", "武冈市", "新宁县", "新邵县"],
        "湖南-湘潭市": ["其他地区", "韶山市", "湘潭县", "湘乡市", "雨湖区", "岳塘区"],
        "湖南-湘西州": ["保靖县", "凤凰县", "古丈县", "花垣县", "吉首市", "龙山县", "泸溪县", "其他地区", "永顺县"],
        "湖南-益阳市": ["安化县", "赫山区", "南县", "其他地区", "桃江县", "沅江市", "资阳区"],
        "湖南-永州市": ["道县", "东安县", "江华瑶族自治县", "江永县", "蓝山县", "冷水滩区", "零陵区", "宁远县", "祁阳县", "其他地区", "双牌县", "新田县"],
        "湖南-岳阳市": ["华容县", "君山区", "临湘市", "汨罗市", "平江县", "其他地区", "湘阴县", "岳阳楼区", "岳阳县", "云溪区"],
        "湖南-张家界市": ["慈利县", "其他地区", "桑植县", "武陵源区", "永定区"],
        "湖南-株洲市": ["茶陵县", "荷塘区", "醴陵市", "芦淞区", "其他地区", "石峰区", "天元区", "炎陵县", "攸县", "株洲县"],
        "吉林-白城市": ["大安市", "其他地区", "洮北区", "洮南市", "通榆县", "镇赉县"],
        "吉林-白山市": ["八道江区", "长白朝鲜族自治县", "抚松县", "江源区", "靖宇县", "临江市", "其他地区"],
        "吉林-长春市": ["朝阳区", "德惠市", "二道区", "高薪技术产业开发区", "经济技术开发区", "净月旅游开发区", "九台市", "宽城区", "绿园区", "南关区", "农安县", "其他地区", "汽车产业开发区", "双阳区", "榆树市"],
        "吉林-吉林市": ["昌邑区", "船营区", "丰满区", "桦甸市", "蛟河市", "龙潭区", "磐石市", "其他地区", "舒兰市", "永吉县"],
        "吉林-辽源市": ["东丰县", "东辽县", "龙山区", "其他地区", "西安区"],
        "吉林-四平市": ["公主岭市", "梨树县", "其他地区", "双辽市", "铁东区", "铁西区", "伊通满族自治县"],
        "吉林-松原市": ["长岭县", "扶余县", "宁江区", "其他地区", "前郭尔罗斯蒙古族自治县", "乾安县"],
        "吉林-通化市": ["东昌区", "二道江区", "辉南县", "集安市", "柳河县", "梅河口市", "其他地区", "通化县"],
        "吉林-延边州": ["安图县", "敦化市", "和龙市", "珲春市", "龙井市", "其他地区", "图们市", "汪清县", "延吉市"],
        "江苏-常州市": ["金坛市", "溧阳市", "戚墅堰区", "其他地区", "天宁区", "武进区", "新北区", "钟楼区"],
        "江苏-淮安市": ["楚州区", "洪泽县", "淮阴区", "金湖县", "涟水县", "其他地区", "清河区", "清浦区", "盱眙县"],
        "江苏-连云港市": ["东海县", "赣榆县", "灌南县", "灌云县", "海州区", "连云区", "其他地区", "新浦区"],
        "江苏-南京市": ["白下区", "高淳县", "鼓楼区", "建邺区", "江宁区", "溧水县", "六合区", "浦口区", "栖霞区", "其他地区", "秦淮区", "下关区", "玄武区", "雨花台区"],
        "江苏-南通市": ["崇川区", "港闸区", "海安县", "海门市", "开发区", "其他地区", "启东市", "如东县", "如皋市", "通州市"],
        "江苏-苏州市": ["沧浪区", "常熟市", "虎丘区", "金阊区", "昆山市", "平江区", "其他地区", "太仓市", "吴江市", "吴中区", "相城区", "新区", "园区", "张家港市"],
        "江苏-宿迁市": ["其他地区", "沭阳县", "泗洪县", "泗阳县", "宿城区", "宿豫县"],
        "江苏-泰州市": ["高港区", "海陵区", "姜堰市", "靖江市", "其他地区", "泰兴市", "兴化市"],
        "江苏-无锡市": ["北塘区", "滨湖区", "崇安区", "惠山区", "江阴市", "南长区", "其他地区", "锡山区", "新区", "宜兴市"],
        "江苏-徐州市": ["丰县", "鼓楼区", "贾汪区", "九里区", "沛县", "邳州市", "其他地区", "泉山区", "睢宁县", "铜山县", "新沂市", "云龙区"],
        "江苏-盐城市": ["滨海县", "大丰市", "东台市", "阜宁县", "建湖县", "其他地区", "射阳县", "亭湖区", "响水县", "盐都区"],
        "江苏-扬州市": ["宝应县", "高邮市", "广陵区", "邗江区", "江都市", "经济开发区", "其他地区", "维扬区", "仪征市"],
        "江苏-镇江市": ["丹徒区", "丹阳市", "京口区", "句容市", "其他地区", "润州区", "扬中市"],
        "江西-抚州市": ["崇仁县", "东乡县", "广昌县", "金溪县", "乐安县", "黎川县", "临川区", "南城县", "南丰县", "其他地区", "宜黄县", "资溪县"],
        "江西-赣州市": ["安远县", "崇义县", "大余县", "定南县", "赣县", "黄金区", "会昌县", "龙南县", "南康市", "宁都县", "其他地区", "全南县", "瑞金市", "上犹县", "石城县", "信丰县", "兴国县", "寻乌县", "于都县", "章贡区"],
        "江西-吉安市": ["安福县", "吉安县", "吉水县", "吉州区", "井冈山市", "其他地区", "青原区", "遂川县", "泰和县", "万安县", "峡江县", "新干县", "永丰县", "永新县"],
        "江西-景德镇市": ["昌江区", "浮梁县", "乐平市", "其他地区", "珠山区"],
        "江西-九江市": ["德安县", "都昌县", "湖口县", "九江县", "庐山区", "彭泽县", "其他地区", "瑞昌市", "武宁县", "星子县", "修水县", "浔阳区", "永修县"],
        "江西-南昌市": ["安义县", "昌北区", "东湖区", "红谷滩新区", "进贤县", "经济技术开发区", "南昌县", "其他地区", "青山湖区", "青云谱区", "湾里区", "西湖区", "新建县"],
        "江西-萍乡市": ["安源区", "莲花县", "芦溪县", "其他地区", "上栗县", "湘东区"],
        "江西-上饶市": ["德兴市", "广丰县", "横峰县", "鄱阳县", "其他地区", "铅山县", "上饶县", "万年县", "婺源县", "信州区", "弋阳县", "余干县", "玉山县"],
        "江西-新余市": ["分宜县", "其他地区", "渝水区"],
        "江西-宜春市": ["丰城市", "奉新县", "高安市", "靖安县", "其他地区", "上高县", "铜鼓县", "万载县", "宜丰县", "袁州区", "樟树市"],
        "江西-鹰潭市": ["贵溪市", "其他地区", "余江县", "月湖区"],
        "辽宁-鞍山市": ["高新区", "海城市", "立山区", "其他地区", "千山区", "台安县", "铁东区", "铁西区", "岫岩满族自治县"],
        "辽宁-本溪市": ["本溪满族自治县", "桓仁满族自治县", "明山区", "南芬区", "平山区", "其他地区", "溪湖区"],
        "辽宁-朝阳市": ["北票市", "朝阳县", "建平县", "喀喇沁左翼蒙古族自治县", "凌源市", "龙城区", "其他地区", "双塔区"],
        "辽宁-大连市": ["长海县", "甘井子区", "金州区", "开发区", "旅顺口区", "普兰店市", "其他地区", "沙河口区", "瓦房店市", "西岗区", "中山区", "庄河市"],
        "辽宁-丹东市": ["东港市", "凤城市", "宽甸满族自治县", "其他地区", "元宝区", "振安区", "振兴区"],
        "辽宁-抚顺市": ["东洲区", "抚顺县", "其他地区", "清原满族自治县", "顺城区", "望花区", "新宾满族自治县", "新抚区"],
        "辽宁-阜新市": ["阜新蒙古族自治县", "海州区", "其他地区", "清河门区", "太平区", "细河区", "新邱区", "彰武县"],
        "辽宁-葫芦岛市": ["建昌县", "连山区", "龙港区", "南票区", "其他地区", "绥中县", "兴城市"],
        "辽宁-锦州市": ["北宁市", "古塔区", "黑山县", "开发区", "凌海市", "凌河区", "其他地区", "太和区", "义县"],
        "辽宁-辽阳市": ["白塔区", "灯塔市", "弓长岭区", "宏伟区", "辽阳县", "其他地区", "太子河区", "文圣区"],
        "辽宁-盘锦市": ["大洼县", "盘山县", "其他地区", "双台子区", "兴隆台区"],
        "辽宁-沈阳市": ["大东区", "东陵区", "法库县", "和平区", "皇姑区", "浑南新区", "康平县", "辽中县", "其他地区", "沈北新区", "沈河区", "苏家屯区", "铁西区", "新城子区", "新民市", "于洪区", "张士开发区"],
        "辽宁-铁岭市": ["昌图县", "调兵山市", "开原市", "其他地区", "清河区", "铁岭县", "西丰县", "银州区"],
        "辽宁-营口市": ["鲅鱼圈区", "大石桥市", "盖州市", "老边区", "其他地区", "西市区", "站前区"],
        "内蒙古-阿拉善盟": ["阿拉善右旗", "阿拉善左旗", "额济纳旗", "其他地区"],
        "内蒙古-巴彦淖尔市": ["磴口县", "杭锦后旗", "临河区", "其他地区", "乌拉特后旗", "乌拉特前旗", "乌拉特中旗", "五原县"],
        "内蒙古-包头市": ["白云矿区", "达尔罕茂明安联合旗", "东河区", "固阳县", "九原区", "昆都仑区", "其他地区", "青山区", "石拐区", "土默特右旗"],
        "内蒙古-赤峰市": ["阿鲁科尔沁旗", "敖汉旗", "巴林右旗", "巴林左旗", "红山区", "喀喇沁旗", "克什克腾旗", "林西县", "宁城县", "其他地区", "松山区", "翁牛特旗", "元宝山区"],
        "内蒙古-鄂尔多斯市": ["达拉特旗", "东胜区", "鄂托克旗", "鄂托克前旗", "杭锦旗", "其他地区", "乌审旗", "伊金霍洛旗", "准格尔旗"],
        "内蒙古-呼和浩特市": ["和林格尔县", "回民区", "其他地区", "清水河县", "赛罕区", "土默特左旗", "托克托县", "武川县", "新城区", "玉泉区"],
        "内蒙古-呼伦贝尔市": ["阿荣旗", "陈巴尔虎旗", "额尔古纳市", "鄂伦春自治旗", "鄂温克族自治旗", "根河市", "海拉尔区", "满洲里市", "莫力达瓦达斡尔族自治旗", "其他地区", "新巴尔虎右旗", "新巴尔虎左旗", "牙克石市", "扎兰屯市"],
        "内蒙古-通辽市": ["霍林郭勒市", "开鲁县", "科尔沁区", "科尔沁左翼后旗", "科尔沁左翼中旗", "库伦旗", "奈曼旗", "其他地区", "扎鲁特旗"],
        "内蒙古-乌海市": ["海勃湾区", "海南区", "其他地区", "乌达区"],
        "内蒙古-乌兰察布市": ["察哈尔右翼后旗", "察哈尔右翼前旗", "察哈尔右翼中旗", "丰镇市", "化德县", "集宁区", "凉城县", "其他地区", "商都县", "四子王旗", "兴和县", "卓资县"],
        "内蒙古-锡林郭勒盟": ["阿巴嘎旗", "东乌珠穆沁旗", "多伦县", "二连浩特市", "其他地区", "苏尼特右旗", "苏尼特左旗", "太仆寺旗", "西乌珠穆沁旗", "锡林浩特市", "镶黄旗", "正蓝旗", "正镶白旗"],
        "内蒙古-兴安盟": ["阿尔山市", "科尔沁右翼前旗", "科尔沁右翼中旗", "其他地区", "突泉县", "乌兰浩特市", "扎赉特旗"],
        "宁夏-固原市": ["泾源县", "隆德县", "彭阳县", "其他地区", "西吉县", "原州区"],
        "宁夏-石嘴山市": ["大武口区", "惠农区", "平罗县", "其他地区"],
        "宁夏-吴忠市": ["红寺堡区", "利通区", "其他地区", "青铜峡市", "同心县", "盐池县"],
        "宁夏-银川市": ["贺兰县", "金凤区", "灵武市", "其他地区", "西夏区", "兴庆区", "永宁县"],
        "宁夏-中卫市": ["海原县", "其他地区", "沙坡头区", "中宁县"],
        "青海-果洛州": ["班玛县", "达日县", "甘德县", "久治县", "玛多县", "玛沁县", "其他地区"],
        "青海-海北州": ["刚察县", "海晏县", "门源回族自治县", "祁连县", "其他地区"],
        "青海-海东地区": ["互助土族自治县", "化隆回族自治县", "乐都县", "民和回族土族自治县", "平安县", "其他地区", "循化撒拉族自治县"],
        "青海-海南州": ["共和县", "贵德县", "贵南县", "其他地区", "同德县", "兴海县"],
        "青海-海西州": ["德令哈市", "都兰县", "格尔木市", "其他地区", "天峻县", "乌兰县"],
        "青海-黄南州": ["河南蒙古族自治县", "尖扎县", "其他地区", "同仁县", "泽库县"],
        "青海-西宁市": ["城北区", "城东区", "城西区", "城中区", "大通回族土族自治县", "湟源县", "湟中县", "其他地区"],
        "青海-玉树州": ["称多县", "囊谦县", "其他地区", "曲麻莱县", "玉树县", "杂多县", "治多县"],
        "山东-滨州市": ["滨城区", "博兴县", "惠民县", "其他地区", "无棣县", "阳信县", "沾化县", "邹平县"],
        "山东-德州市": ["德城区", "开发区", "乐陵市", "临邑县", "陵县", "宁津县", "平原县", "齐河县", "其他地区", "庆云县", "武城县", "夏津县", "禹城市"],
        "山东-东营市": ["东城区", "东营区", "广饶县", "河口区", "垦利县", "利津县", "其他地区", "西城区"],
        "山东-菏泽市": ["曹县", "成武县", "单县", "定陶县", "东明县", "巨野县", "鄄城县", "牡丹区", "其他地区", "郓城县"],
        "山东-济南市": ["长清区", "槐荫区", "济阳县", "历城区", "历下区", "平阴县", "其他地区", "商河县", "市中区", "天桥区", "章丘市"],
        "山东-济宁市": ["嘉祥县", "金乡县", "梁山县", "其他地区", "曲阜市", "任城区", "市中区", "泗水县", "微山县", "汶上县", "兖州市", "鱼台县", "邹城市"],
        "山东-莱芜市": ["钢城区", "莱城区", "其他地区"],
        "山东-聊城市": ["茌平县", "东阿县", "东昌府区", "高唐县", "冠县", "临清市", "其他地区", "莘县", "阳谷县"],
        "山东-临沂市": ["苍山县", "费县", "河东区", "莒南县", "兰山区", "临沭县", "罗庄区", "蒙阴县", "平邑县", "其他地区", "郯城县", "沂南县", "沂水县"],
        "山东-青岛市": ["城阳区", "黄岛区", "即墨市", "胶南市", "胶州市", "开发区", "莱西市", "崂山区", "李沧区", "平度市", "其他地区", "市北区", "市南区", "四方区"],
        "山东-日照市": ["东港区", "莒县", "岚山区", "其他地区", "五莲县"],
        "山东-泰安市": ["岱岳区", "东平县", "肥城市", "宁阳县", "其他地区", "泰山区", "新泰市"],
        "山东-威海市": ["环翠区", "其他地区", "荣成市", "乳山市", "文登市"],
        "山东-潍坊市": ["安丘市", "昌乐县", "昌邑市", "坊子区", "高密市", "寒亭区", "奎文区", "临朐县", "其他地区", "青州市", "寿光市", "潍城区", "诸城市"],
        "山东-烟台市": ["长岛县", "福山区", "海阳市", "莱山区", "莱阳市", "莱州市", "龙口市", "牟平区", "蓬莱市", "栖霞市", "其他地区", "招远市", "芝罘区"],
        "山东-枣庄市": ["其他地区", "山亭区", "市中区", "台儿庄区", "滕州市", "薛城区", "峄城区"],
        "山东-淄博市": ["博山区", "高青县", "桓台县", "临淄区", "其他地区", "沂源县", "张店区", "周村区", "淄川区"],
        "山西-长治市": ["长治县", "长子县", "城区", "高新区", "壶关县", "郊区", "黎城县", "潞城市", "平顺县", "其他地区", "沁县", "沁源县", "屯留县", "武乡县", "襄垣县"],
        "山西-大同市": ["城区", "大同县", "广灵县", "浑源县", "矿区", "灵丘县", "南郊区", "其他地区", "天镇县", "新荣区", "阳高县", "左云县"],
        "山西-晋城市": ["城区", "高平市", "陵川县", "其他地区", "沁水县", "阳城县", "泽州县"],
        "山西-晋中市": ["和顺县", "介休市", "灵石县", "平遥县", "祁县", "其他地区", "寿阳县", "太谷县", "昔阳县", "榆次区", "榆社县", "左权县"],
        "山西-临汾市": ["安泽县", "大宁县", "汾西县", "浮山县", "古县", "洪洞县", "侯马市", "霍州市", "吉县", "蒲县", "其他地区", "曲沃县", "隰县", "乡宁县", "襄汾县", "尧都区", "翼城县", "永和县"],
        "山西-吕梁地区": ["方山县", "汾阳市", "交城县", "交口县", "岚县", "离石区", "临县", "柳林县", "其他地区", "石楼县", "文水县", "孝义市", "兴县", "中阳县"],
        "山西-朔州市": ["怀仁县", "平鲁区", "其他地区", "山阴县", "朔城区", "应县", "右玉县"],
        "山西-太原市": ["古交市", "尖草坪区", "晋源区", "娄烦县", "其他地区", "清徐县", "万柏林区", "小店区", "杏花岭区", "阳曲县", "迎泽区"],
        "山西-忻州市": ["保德县", "代县", "定襄县", "繁峙县", "河曲县", "静乐县", "岢岚县", "宁武县", "偏关县", "其他地区", "神池县", "五台县", "五寨县", "忻府区", "原平市"],
        "山西-阳泉市": ["城区", "郊区", "矿区", "平定县", "其他地区", "盂县"],
        "山西-运城市": ["河津市", "稷山县", "绛县", "临猗县", "平陆县", "其他地区", "芮城县", "万荣县", "闻喜县", "夏县", "新绛县", "盐湖区", "永济市", "垣曲县"],
        "陕西-安康市": ["白河县", "汉滨区", "汉阴县", "岚皋县", "宁陕县", "平利县", "其他地区", "石泉县", "旬阳县", "镇坪县", "紫阳县"],
        "陕西-宝鸡市": ["陈仓区", "凤县", "凤翔县", "扶风县", "金台区", "麟游县", "陇县", "眉县", "岐山县", "其他地区", "千阳县", "太白县", "渭滨区"],
        "陕西-汉中市": ["城固县", "佛坪县", "汉台区", "留坝县", "略阳县", "勉县", "南郑县", "宁强县", "其他地区", "西乡县", "洋县", "镇巴县"],
        "陕西-商洛市": ["丹凤县", "洛南县", "其他地区", "山阳县", "商南县", "商州区", "镇安县", "柞水县"],
        "陕西-铜川市": ["其他地区", "王益区", "耀州区", "宜君县", "印台区"],
        "陕西-渭南市": ["白水县", "澄城县", "大荔县", "富平县", "韩城市", "合阳县", "华县", "华阴市", "临渭区", "蒲城县", "其他地区", "潼关县"],
        "陕西-西安市": ["灞桥区", "碑林区", "长安区", "高陵县", "户县", "蓝田县", "莲湖区", "临潼区", "其他地区", "未央区", "新城区", "阎良区", "雁塔区", "周至县"],
        "陕西-咸阳市": ["彬县", "长武县", "淳化县", "泾阳县", "礼泉县", "其他地区", "乾县", "秦都区", "三原县", "渭城区", "武功县", "兴平市", "旬邑县", "杨凌区", "永寿县"],
        "陕西-延安市": ["安塞县", "宝塔区", "富县", "甘泉县", "黄陵县", "黄龙县", "洛川县", "其他地区", "吴旗县", "延长县", "延川县", "宜川县", "志丹县", "子长县"],
        "陕西-榆林市": ["定边县", "府谷县", "横山县", "佳县", "靖边县", "米脂县", "其他地区", "清涧县", "神木县", "绥德县", "吴堡县", "榆阳区", "子洲县"],
        "上海-上海市": ["宝山区", "长宁区", "崇明县", "奉贤区", "虹口区", "黄浦区", "嘉定区", "金山区", "静安区", "卢湾区", "闵行区", "浦东新区", "普陀区", "其他地区", "青浦区", "松江区", "徐汇区", "杨浦区", "闸北区"],
        "四川-阿坝州": ["阿坝县", "黑水县", "红原县", "金川县", "九寨沟县", "理县", "马尔康县", "茂县", "其他地区", "壤塘县", "若尔盖县", "松潘县", "汶川县", "小金县"],
        "四川-巴中市": ["巴州区", "南江县", "平昌县", "其他地区", "通江县"],
        "四川-成都市": ["成华区", "崇州市", "大邑县", "都江堰市", "金牛区", "金堂县", "锦江区", "龙泉驿区", "彭州市", "郫县", "蒲江县", "其他地区", "青白江区", "青羊区", "邛崃市", "双流县", "温江区", "武侯区", "新都区", "新津县"],
        "四川-达州市": ["达县", "大竹县", "开江县", "其他地区", "渠县", "通川区", "万源市", "宣汉县"],
        "四川-德阳市": ["广汉市", "旌阳区", "罗江县", "绵竹市", "其他地区", "什邡市", "中江县"],
        "四川-甘孜州": ["巴塘县", "白玉县", "丹巴县", "道孚县", "稻城县", "得荣县", "德格县", "甘孜县", "九龙县", "康定县", "理塘县", "泸定县", "炉霍县", "其他地区", "色达县", "石渠县", "乡城县", "新龙县", "雅江县"],
        "四川-广安市": ["广安区", "华蓥市", "邻水县", "其他地区", "市辖区", "武胜县", "岳池县"],
        "四川-广元市": ["苍溪县", "朝天区", "剑阁县", "利州区", "其他地区", "青川县", "旺苍县", "元坝区"],
        "四川-乐山市": ["峨边彝族自治县", "峨眉山市", "夹江县", "犍为县", "金口河区", "井研县", "马边彝族自治县", "沐川县", "其他地区", "沙湾区", "市中区", "五通桥区"],
        "四川-凉山州": ["布拖县", "德昌县", "甘洛县", "会东县", "会理县", "金阳县", "雷波县", "美姑县", "冕宁县", "木里藏族自治县", "宁南县", "普格县", "其他地区", "西昌市", "喜德县", "盐源县", "越西县", "昭觉县"],
        "四川-泸州市": ["古蔺县", "合江县", "江阳区", "龙马潭区", "泸县", "纳溪区", "其他地区", "叙永县"],
        "四川-眉山市": ["丹棱县", "东坡区", "洪雅县", "彭山县", "其他地区", "青神县", "仁寿县"],
        "四川-绵阳市": ["安县", "北川县", "涪城区", "高新区", "江油市", "平武县", "其他地区", "三台县", "盐亭县", "游仙区", "梓潼县"],
        "四川-内江市": ["东兴区", "隆昌县", "其他地区", "市中区", "威远县", "资中县"],
        "四川-南充市": ["高坪区", "嘉陵区", "阆中市", "南部县", "蓬安县", "其他地区", "顺庆区", "西充县", "仪陇县", "营山县"],
        "四川-攀枝花市": ["东区", "米易县", "其他地区", "仁和区", "西区", "盐边县"],
        "四川-遂宁市": ["安居区", "船山区", "大英县", "蓬溪县", "其他地区", "射洪县"],
        "四川-雅安市": ["宝兴县", "汉源县", "芦山县", "名山县", "其他地区", "石棉县", "天全县", "荥经县", "雨城区"],
        "四川-宜宾市": ["长宁县", "翠屏区", "高县", "珙县", "江安县", "筠连县", "南溪县", "屏山县", "其他地区", "兴文县", "宜宾县"],
        "四川-资阳市": ["安岳县", "简阳市", "乐至县", "其他地区", "雁江区"],
        "四川-自贡市": ["大安区", "富顺县", "贡井区", "其他地区", "荣县", "沿滩区", "自流井区"],
        "天津-天津市": ["宝坻区", "北辰区", "滨海新区", "东丽区", "和平区", "河北区", "河东区", "河西区", "红桥区", "蓟县", "津南区", "静海县", "南开区", "宁河县", "其他地区", "武清区", "西青区"],
        "西藏-阿里地区": ["措勤县", "噶尔县", "改则县", "革吉县", "普兰县", "其他地区", "日土县", "札达县"],
        "西藏-昌都地区": ["八宿县", "边坝县", "察雅县", "昌都县", "丁青县", "贡觉县", "江达县", "类乌齐县", "洛隆县", "芒康县", "其他地区", "左贡县"],
        "西藏-拉萨市": ["城关区", "达孜县", "当雄县", "堆龙德庆县", "林周县", "墨竹工卡县", "尼木县", "其他地区", "曲水县"],
        "西藏-林芝地区": ["波密县", "察隅县", "工布江达县", "朗县", "林芝县", "米林县", "墨脱县", "其他地区"],
        "西藏-那曲地区": ["安多县", "巴青县", "班戈县", "比如县", "嘉黎县", "那曲县", "尼玛县", "聂荣县", "其他地区", "申扎县", "双湖特别区", "索县"],
        "西藏-日喀则地区": ["昂仁县", "白朗县", "定结县", "定日县", "岗巴县", "吉隆县", "江孜县", "康马县", "拉孜县", "南木林县", "聂拉木县", "其他地区", "仁布县", "日喀则市", "萨嘎县", "萨迦县", "谢通门县", "亚东县", "仲巴县"],
        "西藏-山南地区": ["措美县", "错那县", "贡嘎县", "加查县", "浪卡子县", "隆子县", "洛扎县", "乃东县", "其他地区", "琼结县", "曲松县", "桑日县", "扎囊县"],
        "新疆-阿克苏地区": ["阿克苏市", "阿瓦提县", "拜城县", "柯坪县", "库车县", "其他地区", "沙雅县", "温宿县", "乌什县", "新和县"],
        "新疆-阿勒泰地区": ["阿勒泰市", "布尔津县", "福海县", "富蕴县", "哈巴河县", "吉木乃县", "其他地区", "青河县"],
        "新疆-巴音郭楞州": ["博湖县", "和静县", "和硕县", "库尔勒市", "轮台县", "其他地区", "且末县", "若羌县", "尉犁县", "焉耆回族自治县"],
        "新疆-博尔塔拉州": ["博乐市", "精河县", "其他地区", "温泉县"],
        "新疆-昌吉州": ["昌吉市", "阜康市", "呼图壁县", "吉木萨尔县", "玛纳斯县", "木垒哈萨克自治县", "其他地区", "奇台县"],
        "新疆-哈密地区": ["巴里坤哈萨克自治县", "哈密市", "其他地区", "伊吾县"],
        "新疆-和田地区": ["策勒县", "和田市", "和田县", "洛浦县", "民丰县", "墨玉县", "皮山县", "其他地区", "于田县"],
        "新疆-喀什地区": ["巴楚县", "伽师县", "喀什市", "麦盖提县", "其他地区", "莎车县", "疏附县", "疏勒县", "塔什库尔干塔吉克自治县", "叶城县", "英吉沙县", "岳普湖县", "泽普县"],
        "新疆-克拉玛依市": ["白碱滩区", "独山子区", "克拉玛依区", "其他地区", "乌尔禾区"],
        "新疆-克孜勒苏州": ["阿合奇县", "阿克陶县", "阿图什市", "其他地区", "乌恰县"],
        "新疆-省直辖": ["阿拉尔市", "其他地区", "石河子市", "图木舒克市", "五家渠市"],
        "新疆-塔城地区": ["额敏县", "和布克赛尔蒙古自治县", "其他地区", "沙湾县", "塔城市", "托里县", "乌苏市", "裕民县"],
        "新疆-吐鲁番地区": ["其他地区", "鄯善县", "吐鲁番市", "托克逊县"],
        "新疆-乌鲁木齐市": ["达坂城区", "米东区", "其他地区", "沙依巴克区", "水磨沟区", "天山区", "头屯河区", "乌鲁木齐县", "新市区"],
        "新疆-伊犁州": ["察布查尔锡伯自治县", "巩留县", "霍城县", "奎屯市", "尼勒克县", "其他地区", "特克斯县", "新源县", "伊宁市", "伊宁县", "昭苏县"],
        "云南-保山市": ["昌宁县", "龙陵县", "隆阳区", "其他地区", "施甸县", "腾冲县"],
        "云南-楚雄州": ["楚雄市", "大姚县", "禄丰县", "牟定县", "南华县", "其他地区", "双柏县", "武定县", "姚安县", "永仁县", "元谋县"],
        "云南-大理州": ["宾川县", "大理市", "洱源县", "鹤庆县", "剑川县", "弥渡县", "南涧彝族自治县", "其他地区", "巍山彝族回族自治县", "祥云县", "漾濞彝族自治县", "永平县", "云龙县"],
        "云南-德宏州": ["梁河县", "陇川县", "芒市", "其他地区", "瑞丽市", "盈江县"],
        "云南-迪庆州": ["德钦县", "其他地区", "维西傈僳族自治县", "香格里拉县"],
        "云南-红河州": ["个旧市", "河口瑶族自治县", "红河县", "建水县", "金平苗族瑶族傣族自治县", "开远市", "泸西县", "绿春县", "蒙自县", "弥勒县", "屏边苗族自治县", "其他地区", "石屏县", "元阳县"],
        "云南-昆明市": ["安宁市", "呈贡县", "东川区", "富民县", "官渡区", "晋宁县", "禄劝彝族苗族自治县", "盘龙区", "其他地区", "石林彝族自治县", "嵩明县", "五华区", "西山区", "寻甸回族彝族自治县", "宜良县"],
        "云南-丽江市": ["古城区", "华坪县", "宁蒗彝族自治县", "其他地区", "永胜县", "玉龙纳西族自治县"],
        "云南-临沧市": ["沧源佤族自治县", "凤庆县", "耿马傣族佤族自治县", "临翔区", "其他地区", "双江拉祜族佤族布朗族傣族自治县", "永德县", "云县", "镇康县"],
        "云南-怒江州": ["福贡县", "贡山独龙族怒族自治县", "兰坪白族普米族自治县", "泸水县", "其他地区"],
        "云南-普洱市": ["江城哈尼族彝族自治县", "景东彝族自治县", "景谷傣族彝族自治县", "澜沧拉祜族自治县", "孟连傣族拉祜族佤族自治县", "墨江哈尼族自治县", "宁洱哈尼彝族自治县", "其他地区", "思茅区", "西盟佤族自治县", "镇沅彝族哈尼族拉祜族自治县"],
        "云南-曲靖市": ["富源县", "会泽县", "陆良县", "罗平县", "马龙县", "其他地区", "麒麟区", "师宗县", "宣威市", "沾益县"],
        "云南-文山州": ["富宁县", "广南县", "麻栗坡县", "马关县", "其他地区", "丘北县", "文山县", "西畴县", "砚山县"],
        "云南-西双版纳州": ["景洪市", "勐海县", "勐腊县", "其他地区"],
        "云南-玉溪市": ["澄江县", "峨山彝族自治县", "红塔区", "华宁县", "江川县", "其他地区", "通海县", "新平彝族傣族自治县", "易门县", "元江哈尼族彝族傣族自治县"],
        "云南-昭通市": ["大关县", "鲁甸县", "其他地区", "巧家县", "水富县", "绥江县", "威信县", "盐津县", "彝良县", "永善县", "昭阳区", "镇雄县"],
        "浙江-杭州市": ["滨江区", "淳安县", "富阳市", "拱墅区", "建德市", "江干区", "临安市", "其他地区", "上城区", "桐庐县", "西湖区", "下城区", "萧山区", "余杭区"],
        "浙江-湖州市": ["安吉县", "长兴县", "德清县", "南浔区", "其他地区", "吴兴区"],
        "浙江-嘉兴市": ["海宁市", "海盐县", "嘉善县", "平湖市", "其他地区", "桐乡市", "南湖区", "秀洲区"],
        "浙江-金华市": ["东阳市", "金东区", "兰溪市", "磐安县", "浦江县", "其他地区", "武义县", "婺城区", "义乌市", "永康市"],
        "浙江-丽水市": ["缙云县", "景宁畲族自治县", "莲都区", "龙泉市", "其他地区", "青田县", "庆元县", "松阳县", "遂昌县", "云和县"],
        "浙江-宁波市": ["北仑区", "慈溪市", "奉化市", "海曙区", "江北区", "江东区", "宁海县", "其他地区", "象山县", "鄞州区", "余姚市", "镇海区"],
        "浙江-衢州市": ["常山县", "江山市", "开化县", "柯城区", "龙游县", "其他地区", "衢江区"],
        "浙江-绍兴市": ["其他地区", "上虞市", "绍兴县", "嵊州市", "新昌县", "越城区", "诸暨市"],
        "浙江-台州市": ["黄岩区", "椒江区", "临海市", "路桥区", "其他地区", "三门县", "天台县", "温岭市", "仙居县", "玉环县"],
        "浙江-温州市": ["苍南县", "洞头县", "乐清市", "龙湾区", "鹿城区", "瓯海区", "平阳县", "其他地区", "瑞安市", "泰顺县", "文成县", "永嘉县"],
        "浙江-舟山市": ["岱山县", "定海区", "普陀区", "其他地区", "嵊泗县"],
        "重庆-重庆市": ["巴南区", "北碚区", "璧山县", "长寿区", "城口县", "大渡口区", "大足县", "垫江县", "丰都县", "奉节县", "涪陵区", "合川区", "江北区", "江津区", "九龙坡区", "开县", "梁平县", "南岸区", "南川区", "彭水苗族土家族自治县", "其他", "綦江县", "黔江区", "荣昌县", "沙坪坝区", "石柱土家族自治县", "双桥区", "铜梁县", "潼南县", "万盛区", "万州区", "巫山县", "巫溪县", "武隆县", "秀山土家族苗族自治县", "永川区", "酉阳土家族苗族自治县", "渝北区", "渝中区", "云阳县", "忠县"],
        "香港-香港岛": ["中西区", "湾仔区", "东区", "南区"],
        "香港-九龙半岛": ["九龙城区", "观塘区", "深水埗区", "黄大仙区", "油尖旺区"],
        "香港-新界": ["荃湾区", "屯门区", "元朗区", "葵青区", "北区", "大埔区", "沙田区", "西贡区"],
        "香港-离岛": ["离岛"],
        "澳门-澳门半岛": ["澳门半岛"],
        "澳门-氹仔": ["氹仔"],
        "澳门-路环": ["路环"],
        "台湾-台北市": ["中正区", "大同区", "中山区", "松山区", "大安区", "万华区", "信义区", "士林区", "北投区", "内湖区", "南港区", "文山区"],
        "台湾-高雄市": ["新兴区", "前金区", "芩雅区", "盐埕区", "鼓山区", "旗津区", "前镇区", "三民区", "左营区", "楠梓区", "小港区"],
        "台湾-基隆市": ["仁爱区", "信义区", "中正区", "中山区", "安乐区", "暖暖区", "七堵区"],
        "台湾-台中市": ["中区", "东区", "南区", "西区", "北区", "北屯区", "西屯区", "南屯区"],
        "台湾-台南市": ["中西区", "东区", "南区", "北区", "安平区", "安南区"],
        "台湾-新竹市": ["东区", "北区", "香山区"],
        "台湾-嘉义市": ["东区", "西区"],
        "台湾-台北县": ["板桥市", "三重市", "中和市", "永和市", "新庄市", "新店市", "树林市", "汐止市", "土城市", "芦洲市", "莺歌镇", "三峡镇", "淡水镇", "五股乡", "泰山乡", "林口乡", "深坑乡", "八里乡"],
        "台湾-新竹县": ["北市", "新埔镇", "东镇", "湖口乡", "新丰乡"],
        "台湾-桃园县": ["桃园市", "中坜市", "八德市", "平镇市", "大溪镇", "芦竹乡", "大园乡", "龟山乡", "龙潭乡", "新屋乡", "观音乡"],
        "台湾-苗栗县": ["苗栗市", "竹南镇", "头份镇", "後龙镇", "通霄镇", "苑裡镇", "三湾乡", "造桥乡", "头屋乡", "公馆乡", "铜锣乡", "三义乡", "西湖乡"],
        "台湾-彰化县": ["彰化市", "鹿港镇", "和美镇", "员林镇", "溪湖镇", "田中镇", "北斗镇", "芬园乡", "花坛乡", "秀水乡", "福兴乡", "线西乡", "伸港乡", "社头乡", "永靖乡", "埔心乡", "大村乡", "埔盐乡", "田尾乡", "埤头乡", "芳苑乡", "二水乡"],
        "台湾-南投县": ["南投市", "草屯镇"],
        "台湾-嘉义县": ["太保市", "朴子市", "大林镇", "竹崎乡", "中埔乡", "水上乡", "鹿草乡", "六脚乡", "新港乡", "民雄乡"],
        "台湾-云林县": ["斗六市", "斗南镇", "虎尾镇", "土库镇", "西螺镇", "大埤乡", "崙背乡", "林内乡", "古坑乡", "莿桐乡"]
    }
})(); (function() {
    var p = NEJ.P("yxp.ut"),
    ut = NEJ.P("nej.ut"),
    e = NEJ.P("nej.e"),
    tY;
    p.uf = NEJ.C();
    tY = p.uf.dy(ut.et, !0);
    tY.zW = function(cz) {
        this.CU()
    };
    tY.dD = function(cz) {
        this.fq = e.cK(cz.parent) || null;
        this.un = e.ft(this.fq);
        if (this.un.length < 2) {
            return
        }
        this.hB = cz.childs || cz.timeout || 2e3;
        this.uM = cz.height || 200;
        this.tZ = null;
        this.uN();
        this.nU();
        this.CH(cz)
    };
    tY.uN = function() {
        this.fq.style.position = "relative";
        this.fq.style.overflow = "hidden";
        this.fq.style.height = this.uM + "px";
        this.tZ = e.gy("div");
        this.tZ.style.position = "absolute";
        for (var i = 0; i < this.un.length; i++) {
            this.tZ.appendChild(this.un[i])
        }
        this.fq.appendChild(this.tZ)
    };
    tY.nU = function() {
        var lw = null,
        lx = this;
        var Ak = e.ft(this.tZ);
        var hr = uO(Ak);
        var cz = {
            from: {
                offset: 0
            },
            to: {
                offset: hr
            },
            duration: 500,
            onupdate: function(options) {
                lx.tZ.style.top = -options.offset + "px"
            },
            onstop: function() {
                ut.uW.hp(lw);
                lx.uP(Ak);
                window.setTimeout(lx.nU.cC(lx), lx.hB)
            }
        };
        lw = ut.uW.dz(cz);
        lw.px()
    };
    tY.uP = function(Ak) {
        var um = Ak[0];
        var ey = um.parentNode;
        ey.style.top = "0";
        ey.appendChild(um)
    };
    tY.te = function() {};
    var uO = function(cB) {
        return e.sF(cB[1]).y - e.sF(cB[0]).y
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("nej.ui"),
    yui = NEJ.P("yxp.ui"),
    fQ = null;
    yui.dK = NEJ.C();
    yui.dK.qV = "广东";
    yui.dK.qW = "内蒙古,黑龙江,西藏,甘肃,青海,宁夏,新疆";
    yui.dK.qX = "广东";
    yui.dK.qY = "上海,江苏,浙江,安徽";
    yui.dK.qZ = "辽宁,吉林,黑龙江,西藏,新疆";
    yui.dK.q$ = "北京,天津,河北,山西,内蒙古,山东,陕西,甘肃,青海,宁夏";
    yui.dK.lV = ["安徽", "北京", "福建", "甘肃", "广东", "广西", "贵州", "海南", "河北", "河南", "黑龙江", "湖北", "湖南", "吉林", "江苏", "江西", "辽宁", "内蒙古", "宁夏", "青海", "山东", "山西", "陕西", "上海", "四川", "天津", "西藏", "新疆", "云南", "浙江", "重庆"];
    yui.dK.AG = {
        pto: "普通快递",
        eyb: "E邮宝",
        ems: "EMS"
    };
    fQ = yui.dK.dy(p.gr, !0);
    var ec = e.fR("div .show{display:block;}.mark-city{color:#336699;}.mark-city:hover{color:#fff;text-decoration:none;}.change{cursor:pointer;margin-right:5px;}.pri-citys{text-indent:0px;background-color:#fff;display:none;padding:5px;border:1px solid #ccc;position:absolute;top:25px;_top:20px;left:0px;_left:60px;width:256px;}.pri-citys a,.pri-citys span{cursor:pointer;padding:2px;text-align:center;float:left;width:60px;}.pri-citys a:hover{background-color:#ffbf69;}");
    fQ.rd = function() {
        var lR = "<span class=''>全国</span>";
        var lQ = "";
        var oy = [];
        for (var i = 0; i < this.kx.length; i++) {
            oy.push(yui.dK.AG[this.kx[i]] + ":<span class='mark-sp'></span>&nbsp;&nbsp;")
        }
        lQ = oy.join("");
        for (var i = 0; i < yui.dK.lV.length; i++) {
            lR += "<a href='#' class='mark-city'>" + yui.dK.lV[i] + "</a>"
        }
        return e.eY('<div class="f-pr"><span class="s-fc3">配&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;送：</span><span class="wh">至&nbsp;<span class="w-down">' + this.nM + '</span><div class="pri-citys">' + lR + '</div></span><span class="now-sel-exp">' + lQ + '</span><span class="sl">|</span><a target="_blank" class="s-fc9" href="' + this.rj + '">运费查询</a></div>')
    };
    fQ.zW = function(cI) {
        this.fX = ec;
        this.nM = cI.city;
        this.kx = cI.sps;
        this.rj = cI.link;
        this.gs = this.rd();
        this.CU(cI)
    };
    fQ.fD = function(cz) {
        this.Ev(cz);
        this.eh()
    };
    fQ.eh = function() {
        this.nI = e.cT(this.cN, "mark-sp");
        this.fN = e.cT(this.cN, "pri-citys")[0];
        var kM = e.cT(this.cN, "wh")[0];
        var nk = e.cT(kM, "w-down")[0];
        v.cM(kM, "mouseover", this.nh.cC(this, 0, this.fN));
        v.cM(kM, "mouseout", this.nh.cC(this, 1, this.fN));
        var kt = e.cT(this.cN, "mark-city");
        for (var i = 0; i < kt.length; i++) v.cM(kt[i], "click", this.AB.cC(this, nk, kt[i].innerHTML, this.nI));
        this.AB(nk, this.nM, this.nI)
    };
    fQ.AB = function(g$, ew, mS) {
        v.dP(arguments[3]);
        var ru = this.rw(ew);
        for (var i = 0; i < mS.length; i++) mS[i].innerHTML = ru[i];
        g$.innerHTML = ew;
        e.nf(this.fN, "show")
    };
    fQ.nh = function(dq, hj) {
        if (dq == 0) {
            e.dw(hj, "show")
        } else e.nf(hj, "show")
    };
    fQ.rw = function(ew) {
        var mR = this.kx,
        dp = [];
        for (var i = 0; i < mR.length; i++) {
            dp.push(this.ry(ew, mR[i]))
        }
        return dp
    };
    fQ.ry = function(ew, Aw) {
        if (Aw == "pto") {
            if (yui.dK.qW.indexOf(ew) >= 0) return "15.00";
            else if (yui.dK.qY.indexOf(ew) >= 0) return "6.00";
            else if (yui.dK.qX.indexOf(ew) >= 0) return "8.00";
            else return "10.00"
        } else if (Aw == "eyb") {
            if (yui.dK.qV.indexOf(ew) >= 0) {
                return "10.00"
            } else {
                return "15.00"
            }
        } else if (Aw == "ems") {
            if (yui.dK.qZ.indexOf(ew) >= 0) {
                return "30.00"
            } else if (yui.dK.q$.indexOf(ew) >= 0) {
                return "25.00"
            } else {
                return "22.00"
            }
        }
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("yxp.ui"),
    u = NEJ.P("yxp.u"),
    j = NEJ.P("nej.j"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace>{}.#<uispace> table{width:446px;margin-top:10px;table-layout:fixed;border-collapse:collapse;border:0px;text-align:left;}.#<uispace> table td{font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;padding:10px 0px;height:43px;}.#<uispace> table td.username,.#<uispace> table td.password{font-size:18px;color:#808080;text-align:right;}.#<uispace> table div.u,.#<uispace> table div.p {text-align:center;}.#<uispace> table div.u input,.#<uispace> table div.p input{font-size:16px;color:#666;border:1px solid #ccc;height:20px;line-height:20px;padding:10px 0 10px 20px;width:220px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> table div.u input.hover,.#<uispace> table div.p input.hover{border-color:#ffcc00;}.#<uispace> table div.u span.tip-select{display:block;line-height:26px;text-align:left;min-width:240px;*width:240px;*overflow:hidden;color:#ccc;background-color:#fff;position:absolute;top:42px;left:12px;_left:0px;border:1px solid #ccc;text-indent:20px;}.#<uispace> table div.u span.tip-select span.opt{width:100%;white-space:nowrap;display:block;height:26px;color:#737373;}.#<uispace> table div.u span.tip-select span.opt-hover{cursor:pointer;color:#fff;background-color:#ff9900;}.#<uispace> table div.show span.tip-select{display:block}.#<uispace> table a.reg,.#<uispace> table a.fp{color:#808080;font-size:14px;text-decoration:none;}.#<uispace> table a.reg:hover,.#<uispace> table a.fp:hover,.#<uispace> table div.else a:hover{color:#336699;}.#<uispace> table input.login{font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;margin:0 0 20px 11px;text-align:center;color:#fff;font-size:18px;width:125px;height:34px;line-height:34px;background:url(http://st1.yxp.126.net/rsc/img/bg-x.png) repeat-x;border:0px;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;*border:0px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> table input.login-1{border-left:1px solid #25aff2;border-right:1px solid #25aff2;*border:0px;background-position:0 -50px;cursor:pointer;}.#<uispace> table div.else{border-top:1px solid #e5e5e5;padding:20px 0 0 84px;line-height:25px;color:#777;}.#<uispace> table div.else a{background:url(http://st1.yxp.126.net/rsc/img/icons.png) no-repeat -9999px -9999px;padding:3px 0px 3px 18px;color:#777;}.#<uispace> table div.else a.sina{background-position:0px -127px;}.#<uispace> table div.else a.renren{background-position:0px -185px;}.#<uispace> table div.else a.qq{background-position:0px -155px;}.#<uispace> table div.else a.msn{background-position:0px -216px;}.#<uispace> table div.else span.sp{margin:0px 10px;border-left:1px solid #ccc;}.#<uispace> table div.else a.msn-login{border-right:0px;}');
    var zZ = e.eY('<div class="' + ec + '"><form><table><tr class="t1"><td width="80" class="username">帐号</td><td width="266"><div class="u f-pr"><input class="mark-input" name="username" autocomplete="off"/></div></td><td width="100"><a class="reg"  href="http://reg.163.com/reg/reg.jsp?product=yxp&url=http://yxp.163.com/&loginurl=http://yxp.163.com/" >注册通行帐号</a></td></tr><tr class="t2"><td class="password">密码</td><td><div class="p"><input class="mark-input" type="password" name="password"/></div></td><td><a class="fp"  href="http://reg.163.com/RecoverPasswd1.shtml" target="_blank">忘记密码了?</a></td></tr><tr class="t3"><td>&nbsp;</td><td colspan="2"><input class="login mark-input" type="button" value="登&nbsp;&nbsp;录" name="submit"/></td></tr><tr class="t4"><td colspan="3"><div class="else"><span>使用合作网站帐号登录印像派:</span><br/><a href="http://yxp.163.com/sina.do?action=index" class="sina" target="_blank">新浪微博</a><span class="sp"></span><a href="http://yxp.163.com/qq.do?action=index" class="qq" target="_blank">QQ</a><span class="sp"></span><a href="http://yxp.163.com/renren.do?action=index" class="renren" target="_blank">人人网</a><span class="sp"></span><a href="http://yxp.163.com/msn.do?action=index" class="msn" target="_blank">MSN</a></div></td></tr></table></form></div>');
    var it = [{
        name: "网易通行证",
        suffix: "@163.com",
        md5: true,
        tag: "",
        region: "@163.com"
    },
    {
        name: "126邮箱",
        suffix: "@126.com",
        md5: false,
        tag: "@126",
        region: "@126.com"
    },
    {
        name: "YEAH邮箱",
        suffix: "@yeah.net",
        md5: false,
        tag: "@yeah",
        region: "@yeah.net"
    },
    {
        name: "VIP邮箱",
        suffix: "@vip.163.com",
        md5: true,
        tag: ".vip",
        region: "@vip.163.com"
    },
    {
        name: "126尊享邮",
        suffix: "@vip.126.com",
        md5: true,
        tag: "@vip.126.com",
        region: "@vip.126.com"
    },
    {
        name: "POPO",
        suffix: ".popo",
        md5: true,
        tag: ".popo",
        region: "@popo.163.com"
    },
    {
        name: "188邮箱",
        suffix: "@188.com",
        md5: false,
        tag: "@188",
        region: "@188.com"
    },
    {
        name: "腾讯通行证",
        suffix: "@qq.com",
        md5: true,
        tag: "@qq.com",
        region: "@qq.com"
    },
    {
        name: "雅虎通行证",
        suffix: "@yahoo.com",
        md5: true,
        tag: "@yahoo.com",
        region: "@yahoo.com"
    },
    {
        name: "新浪通行证",
        suffix: "@sina.com",
        md5: true,
        tag: "@sina.com",
        region: "@sina.com"
    },
    {
        name: "CORP邮箱",
        suffix: "@corp.netease.com",
        md5: false,
        tag: "@corp.netease.com",
        region: "@corp.netease.com"
    }];
    p.lG = NEJ.C();
    cH = p.lG.dy(p.gx, !0);
    dc = p.lG.dG;
    cH.zW = function(cI) {
        this.CU(cI)
    };
    cH.dX = function(cI) {
        dc.dX.apply(this, arguments);
        this.xS = cI.returnurl || window.location.href;
        var eD = e.gn(zZ);
        this.hQ().appendChild(eD);
        this.cO = eD.getElementsByTagName("form")[0];
        this.eC = p.g_.ep({
            opacity: .6,
            bgc: "#000",
            parent: document.body
        })
    };
    cH.eh = function(cI) {
        dc.eh.apply(this, arguments);
        v.cM(this.cO["username"], "blur", this.h_.cC(this));
        v.cM(this.cO["username"], "focus", this.hW.cC(this));
        v.cM(this.cO["username"], "keyup", this.hV.cC(this));
        v.cM(this.cO["username"], "keydown", this.kf.cC(this));
        v.cM(this.cO["username"], "click",
        function() {
            v.dP(arguments[0])
        });
        v.cM(this.cO["username"], "input", this.kg.cC(this));
        v.cM(this.cO["password"], "blur", this.h_.cC(this));
        v.cM(this.cO["password"], "focus", this.hW.cC(this));
        v.cM(this.cO["password"], "keyup", this.hV.cC(this));
        v.cM(this.cO["submit"], "click", this.kh.cC(this));
        v.cM(document.body, "click",
        function() {
            e.fk(e.cT(this.cO["username"].parentNode, "tip-select")[0])
        }.cC(this))
    };
    cH.gB = function() {
        if (this.cO["username"].value && this.cO["password"].value) {
            return {
                username: this.cO["username"].value,
                password: this.cO["password"].value
            }
        } else return false
    };
    cH.h_ = function() {
        var lZ = v.dE(arguments[0]);
        e.nf(lZ, "hover");
        if (lZ.name == "username") {}
    };
    cH.hW = function() {
        var lZ = v.dE(arguments[0]);
        e.dw(lZ, "hover")
    };
    cH.hV = function() {
        var lZ = v.dE(arguments[0]);
        var bX = arguments[0];
        if (lZ.name == "username") {
            var dO = e.cT(lZ.parentNode, "opt-hover")[0];
            if (bX.keyCode == 13) {
                if (dO) {
                    lZ.value = dO.innerHTML;
                    u.tQ(document.body)
                }
                this.cO["password"].focus()
            } else if (bX.keyCode == 38 || bX.keyCode == 40) {
                if (dO) {
                    var gq = bX.keyCode == 38 ? dO.previousSibling: dO.nextSibling;
                    if (gq && gq.nodeType == 1) {
                        e.nf(dO, "opt-hover");
                        e.dw(gq, "opt-hover")
                    }
                }
            }
        } else if (bX.keyCode == 13) {
            if (this.gB()) {
                this.cO["submit"].click()
            }
        }
        if (this.gB()) e.dw(this.cO["submit"], "login-1");
        else e.nf(this.cO["submit"], "login-1")
    };
    cH.kf = function() {
        var bX = arguments[0];
        if (bX.keyCode == 9) {
            v.dP(arguments[0]);
            var lZ = v.dE(arguments[0]);
            var dO = e.cT(lZ.parentNode, "opt-hover")[0];
            if (dO) {
                lZ.value = dO.innerHTML;
                u.tQ(document.body)
            }
            this.cO["password"].focus()
        }
    };
    cH.kg = function() {
        var lZ = v.dE(arguments[0]);
        if (lZ.value) {
            e.fk(e.cT(lZ.parentNode, "tip-select")[0], true);
            var hD = this.ko();
            if (hD) {
                var gp = e.fH(hD);
                lZ.parentNode.appendChild(gp);
                go = e.d_("span.opt", gp) || e.cT(gp, "opt");
                for (var i = 0; i < go.length; i++) {
                    v.cM(go[i], "mouseover", this.kr.cC(this));
                    v.cM(go[i], "click", this.ks.cC(this))
                }
            }
        }
    };
    cH.kr = function() {
        v.dP(arguments[0]);
        var fc = v.dE(arguments[0]);
        var hj = e.d_("span.opt-hover", fc.parentNode) || e.cT(fc.parentNode, "opt-hover");
        e.nf(hj[0], "opt-hover");
        e.dw(fc, "opt-hover");
        this.cO["username"].blur()
    };
    cH.ks = function() {
        var fc = v.dE(arguments[0]);
        this.cO["username"].value = fc.innerHTML;
        this.cO["password"].focus()
    };
    cH.ko = function() {
        var iC = this.cO["username"].value.split("@")[0];
        var dV = "",
        gK = false,
        im = false;
        if (iC) {
            dV = '<span class="tip-select">请选择或继续输入...';
            var fw = "";
            for (var i = 0; i < it.length; i++) {
                fw = iC + it[i].region;
                if (fw.toLowerCase().indexOf(this.cO["username"].value.toLowerCase()) >= 0) {
                    dV += '<span class=" opt ' + (gK ? "": "opt-hover ") + ' ">' + fw + "</span>";
                    gK = true;
                    if (fw == this.cO["username"].value) im = true
                }
            }
            dV += "</span>"
        }
        return gK && !im ? dV: ""
    };
    cH.kh = function() {
        var cJ = this.gB();
        if (cJ) {
            if (e.fP(v.dE(arguments[0]), "login-1")) {
                if (cJ.username.indexOf("corp.netease.com") != -1) {
                    cJ.username = cJ.username.replace("@corp.netease.com", "");
                    this.oQ(cJ)
                } else window.location.href = "https://reg.163.com/logins.jsp?type=1&product=yxp&username=" + encodeURIComponent(cJ.username) + "&password=" + encodeURIComponent(cJ.password) + "&url=" + encodeURIComponent(this.xS)
            }
        }
    };
    cH.oQ = function(cJ) {
        j.hk("/ajax.do?action=corpLogin", {
            query: cJ,
            type: "json",
            onload: this.oP.cC(this)
        })
    };
    cH.oP = function(cA) {
        if (cA.result) {
            window.location.reload()
        } else alert("登录失败，请检查用户名跟密码是否输入正确")
    };
    cH.dH = function() {
        this.eC.dH();
        dc.dH.apply(this, arguments);
        return this
    };
    cH.dZ = function() {
        this.eC.dZ();
        dc.dZ.apply(this, arguments);
        return this
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    p = NEJ.P("nej.ui"),
    yui = NEJ.P("yxp.ui"),
    v = NEJ.P("nej.v");
    var ec = e.fR(".#<uispace>{width:64px;margin:0px auto;position:relative;height:16px;}.#<uispace> .add-s{left:2px;top:3px;text-decoration:none;position:absolute;display:block;border:1px solid #ccc;width:11px;height:11px;line-height:11px;}.#<uispace> .add-a{right:3px;top:3px;text-decoration:none;position:absolute;display:block;border:1px solid #ccc;width:11px;height:11px;line-height:12px;}.#<uispace> .add-i{width:25px;margin:0px;text-align:center;height:16px;}");
    var zZ = e.eY('<div class="' + ec + '"><a href="javascript:void(0);" class="add-s mark-a">-</a><input class="add-i mark-input" maxlength="3" type="text"/><a href="javascript:void(0);" class="add-a mark-a">+</a></div>');
    yui.tI = NEJ.C();
    cH = yui.tI.dy(p.gr, !0);
    cH.zW = function(cz) {
        cz = cz || {};
        cz.parent = cz.parent || document.body;
        this.fX = ec;
        this.gs = zZ;
        this.fq = cz.parent;
        this.ty = cz.changeNumCallBack;
        this.CU(cz);
        this.dX(cz);
        this.eh(cz)
    };
    cH.dX = function(cz) {
        e.cT(this.cN, "mark-input")[0].value = cz.num || 1
    };
    cH.eh = function(cz) {
        var g$ = e.cT(this.cN, "mark-a"),
        tn = e.cT(this.cN, "mark-input")[0];
        v.cM(tn, "change", this.tP.cC(this));
        v.cM(tn, "keydown", this.tO.cC(this));
        v.cM(g$[0], "click", this.tN.cC(this, tn));
        v.cM(g$[1], "click", this.tM.cC(this, tn))
    };
    cH.tw = function(tk) {
        var pZ = !!tk;
        if (pZ && /^\d{1,3}$/.test(tk) && tk >= 1 && tk <= 1e3) {
            pZ = true
        } else {
            yui.oi.dz({
                parent: document.body
            }).dH("请确保输入的数字在1~1000之间!");
            pZ = false
        }
        return pZ
    };
    cH.tM = function(tn) {
        v.dP(arguments[1]);
        var tk = parseInt(tn.value);
        if (tk < 1e3 && this.tw(tk + 1)) {
            tn.value = tk + 1;
            this.ty(this)
        }
    };
    cH.tN = function(tn) {
        v.dP(arguments[1]);
        var tk = parseInt(tn.value);
        if (tk > 1 && this.tw(tk - 1)) {
            tn.value = tk - 1;
            this.ty(this)
        }
    };
    cH.tO = function() {
        var bX = arguments[0];
        if (bX.keyCode >= 48 && bX.keyCode <= 57 || bX.keyCode >= 96 && bX.keyCode <= 105 || bX.keyCode == 8 || bX.keyCode == 9) {
            return true
        } else {
            v.dP(bX);
            return false
        }
    };
    cH.tP = function() {
        var bX = arguments[0],
        tk = v.dE(bX).value;
        if (this.tw(tk)) {
            this.ty(this)
        }
    };
    cH.tH = function() {
        return parseInt(e.cT(this.cN, "mark-input")[0].value)
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("yxp.ui"),
    u = NEJ.P("yxp.u"),
    j = NEJ.P("nej.j"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace>{}.#<uispace> table{width:446px;margin-top:10px;table-layout:fixed;border-collapse:collapse;border:0px;text-align:left;}.#<uispace> table td{font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;padding:10px 0px;height:43px;}.#<uispace> table td.username,.#<uispace> table td.password{font-size:18px;color:#808080;text-align:right;}.#<uispace> table div.u,.#<uispace> table div.p {text-align:center;}.#<uispace> table div.u input,.#<uispace> table div.p input{font-size:16px;color:#666;border:1px solid #ccc;height:20px;line-height:20px;padding:10px 0 10px 20px;width:220px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> table div.u input.hover,.#<uispace> table div.p input.hover{border-color:#ffcc00;}.#<uispace> table div.u span.tip-select{display:block;line-height:26px;text-align:left;min-width:240px;*width:240px;*overflow:hidden;color:#ccc;background-color:#fff;position:absolute;top:42px;left:12px;_left:0px;border:1px solid #ccc;text-indent:20px;}.#<uispace> table div.u span.tip-select span.opt{width:100%;white-space:nowrap;display:block;height:26px;color:#737373;}.#<uispace> table div.u span.tip-select span.opt-hover{cursor:pointer;color:#fff;background-color:#ff9900;}.#<uispace> table div.show span.tip-select{display:block}.#<uispace> table a.reg,.#<uispace> table a.fp{color:#808080;font-size:14px;text-decoration:none;}.#<uispace> table a.reg:hover,.#<uispace> table a.fp:hover,.#<uispace> table div.else a:hover{color:#336699;}.#<uispace> table input.login,.#<uispace> table input.nologin{font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;margin:0 0 20px 11px;text-align:center;color:#fff;font-size:18px;width:125px;height:34px;line-height:34px;background:url(http://st1.yxp.126.net/rsc/img/bg-x.png) repeat-x;border:0px;border-left:1px solid #cdcdcd;border-right:1px solid #cdcdcd;*border:0px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> table input.login-1{border-left:1px solid #25aff2;border-right:1px solid #25aff2;*border:0px;background-position:0 -50px;cursor:pointer;}.#<uispace> table input.nologin{cursor:pointer;color:#a8a8a8;}.#<uispace> table div.else{border-top:1px solid #e5e5e5;padding:20px 0 0 84px;line-height:25px;color:#777;}.#<uispace> table div.else a{background:url(http://st1.yxp.126.net/rsc/img/icons.png) no-repeat -9999px -9999px;padding:3px 0px 3px 18px;color:#777;}.#<uispace> table div.else a.sina{background-position:0px -127px;}.#<uispace> table div.else a.renren{background-position:0px -185px;}.#<uispace> table div.else a.qq{background-position:0px -155px;}.#<uispace> table div.else a.msn{background-position:0px -216px;}.#<uispace> table div.else span.sp{margin:0px 10px;border-left:1px solid #ccc;}.#<uispace> table div.else a.msn-login{border-right:0px;}');
    var zZ = e.eY('<div class="' + ec + '"><form><table><tr class="t1"><td width="80" class="username">帐号</td><td width="266"><div class="u f-pr"><input class="mark-input" name="username" autocomplete="off"/></div></td><td width="100"><a class="reg"  href="http://reg.163.com/reg/reg.jsp?product=yxp&url=http://yxp.163.com/&loginurl=http://yxp.163.com/" >注册通行账号</a></td></tr><tr class="t2"><td class="password">密码</td><td><div class="p"><input class="mark-input" type="password" name="password"/></div></td><td><a class="fp"  href="http://reg.163.com/RecoverPasswd1.shtml" target="_blank">忘记密码了?</a></td></tr><tr class="t3"><td>&nbsp;</td><td colspan="2"><input class="login mark-input" type="button" value="登录咨询" name="submit"/><input class="nologin mark-input f-dn" type="button" value="匿名咨询" name="nologin"/></td></tr><tr class="t4"><td colspan="3"><div class="else"><span>使用合作网站帐号登录印像派:</span><br/><a href="http://yxp.163.com/sina.do?action=index" class="sina" target="_blank">新浪微博</a><span class="sp"></span><a href="http://yxp.163.com/qq.do?action=index" class="qq" target="_blank">QQ</a><span class="sp"></span><a href="http://yxp.163.com/renren.do?action=index" class="renren" target="_blank">人人网</a><span class="sp"></span><a href="http://yxp.163.com/msn.do?action=index" class="msn" target="_blank">MSN</a></div></td></tr></table></form></div>');
    var it = [{
        name: "网易通行证",
        suffix: "@163.com",
        md5: true,
        tag: "",
        region: "@163.com"
    },
    {
        name: "126邮箱",
        suffix: "@126.com",
        md5: false,
        tag: "@126",
        region: "@126.com"
    },
    {
        name: "YEAH邮箱",
        suffix: "@yeah.net",
        md5: false,
        tag: "@yeah",
        region: "@yeah.net"
    },
    {
        name: "VIP邮箱",
        suffix: "@vip.163.com",
        md5: true,
        tag: ".vip",
        region: "@vip.163.com"
    },
    {
        name: "126尊享邮",
        suffix: "@vip.126.com",
        md5: true,
        tag: "@vip.126.com",
        region: "@vip.126.com"
    },
    {
        name: "POPO",
        suffix: ".popo",
        md5: true,
        tag: ".popo",
        region: "@popo.163.com"
    },
    {
        name: "188邮箱",
        suffix: "@188.com",
        md5: false,
        tag: "@188",
        region: "@188.com"
    },
    {
        name: "腾讯通行证",
        suffix: "@qq.com",
        md5: true,
        tag: "@qq.com",
        region: "@qq.com"
    },
    {
        name: "雅虎通行证",
        suffix: "@yahoo.com",
        md5: true,
        tag: "@yahoo.com",
        region: "@yahoo.com"
    },
    {
        name: "新浪通行证",
        suffix: "@sina.com",
        md5: true,
        tag: "@sina.com",
        region: "@sina.com"
    },
    {
        name: "CORP邮箱",
        suffix: "@corp.netease.com",
        md5: false,
        tag: "@corp.netease.com",
        region: "@corp.netease.com"
    }];
    p.j$ = NEJ.C();
    cH = p.j$.dy(p.gx, !0);
    dc = p.j$.dG;
    cH.zW = function(cI) {
        this.CU(cI)
    };
    cH.dX = function(cI) {
        dc.dX.apply(this, arguments);
        var eD = e.gn(zZ);
        this.xP = cI.userEmail;
        this.xO = cI.frommp;
        this.hQ().appendChild(eD);
        this.cO = eD.getElementsByTagName("form")[0];
        if (this.xO == true) {
            this.cO["username"].value = this.xP;
            this.cO["username"].disabled = true;
            var xQ = eD.getElementsByTagName("tr")[3];
            e.hh(xQ, "display", "none");
            var g$ = eD.getElementsByTagName("a")[0];
            e.hh(g$, "display", "none");
            this.cO["submit"].value = "登 录"
        }
        this.eC = p.g_.ep({
            opacity: .6,
            bgc: "#000",
            parent: document.body
        });
        if (cI.type == "comm100livechat") {
            e.hh(this.cO["nologin"], "display", "inline")
        }
    };
    cH.eh = function(cI) {
        dc.eh.apply(this, arguments);
        v.cM(this.cO["username"], "blur", this.h_.cC(this));
        v.cM(this.cO["username"], "focus", this.hW.cC(this));
        v.cM(this.cO["username"], "keyup", this.hV.cC(this));
        v.cM(this.cO["username"], "keydown", this.kf.cC(this));
        v.cM(this.cO["username"], "click",
        function() {
            v.dP(arguments[0])
        });
        v.cM(this.cO["username"], "input", this.kg.cC(this));
        v.cM(this.cO["password"], "blur", this.h_.cC(this));
        v.cM(this.cO["password"], "focus", this.hW.cC(this));
        v.cM(this.cO["password"], "keyup", this.hV.cC(this));
        v.cM(this.cO["submit"], "click", this.kh.cC(this));
        v.cM(document.body, "click",
        function() {
            e.fk(e.cT(this.cO["username"].parentNode, "tip-select")[0])
        }.cC(this));
        v.cM(this.cO["nologin"], "click",
        function() {
            window.location.href = "http://yxp.163.com/redirect.do?action=comm100"
        })
    };
    cH.gB = function() {
        if (this.cO["username"].value && this.cO["password"].value) {
            return {
                username: this.cO["username"].value,
                password: this.cO["password"].value
            }
        } else return false
    };
    cH.h_ = function() {
        var lZ = v.dE(arguments[0]);
        e.nf(lZ, "hover");
        if (lZ.name == "username") {}
    };
    cH.hW = function() {
        var lZ = v.dE(arguments[0]);
        e.dw(lZ, "hover")
    };
    cH.hV = function() {
        var lZ = v.dE(arguments[0]);
        var bX = arguments[0];
        if (lZ.name == "username") {
            var dO = e.cT(lZ.parentNode, "opt-hover")[0];
            if (bX.keyCode == 13) {
                if (dO) {
                    lZ.value = dO.innerHTML;
                    u.tQ(document.body)
                }
                this.cO["password"].focus()
            } else if (bX.keyCode == 38 || bX.keyCode == 40) {
                if (dO) {
                    var gq = bX.keyCode == 38 ? dO.previousSibling: dO.nextSibling;
                    if (gq && gq.nodeType == 1) {
                        e.nf(dO, "opt-hover");
                        e.dw(gq, "opt-hover")
                    }
                }
            }
        } else if (bX.keyCode == 13) {
            if (this.gB()) {
                this.cO["submit"].click()
            }
        }
        if (this.gB()) e.dw(this.cO["submit"], "login-1");
        else e.nf(this.cO["submit"], "login-1")
    };
    cH.kf = function() {
        var bX = arguments[0];
        if (bX.keyCode == 9) {
            v.dP(arguments[0]);
            var lZ = v.dE(arguments[0]);
            var dO = e.cT(lZ.parentNode, "opt-hover")[0];
            if (dO) {
                lZ.value = dO.innerHTML;
                u.tQ(document.body)
            }
            this.cO["password"].focus()
        }
    };
    cH.kg = function() {
        var lZ = v.dE(arguments[0]);
        if (lZ.value) {
            e.fk(e.cT(lZ.parentNode, "tip-select")[0], true);
            var hD = this.ko();
            if (hD) {
                var gp = e.fH(hD);
                lZ.parentNode.appendChild(gp);
                go = e.d_("span.opt", gp) || e.cT(gp, "opt");
                for (var i = 0; i < go.length; i++) {
                    v.cM(go[i], "mouseover", this.kr.cC(this));
                    v.cM(go[i], "click", this.ks.cC(this))
                }
            }
        }
    };
    cH.kr = function() {
        v.dP(arguments[0]);
        var fc = v.dE(arguments[0]);
        var hj = e.d_("span.opt-hover", fc.parentNode) || e.cT(fc.parentNode, "opt-hover");
        e.nf(hj[0], "opt-hover");
        e.dw(fc, "opt-hover");
        this.cO["username"].blur()
    };
    cH.ks = function() {
        var fc = v.dE(arguments[0]);
        this.cO["username"].value = fc.innerHTML;
        this.cO["password"].focus()
    };
    cH.ko = function() {
        var iC = this.cO["username"].value.split("@")[0];
        var dV = "",
        gK = false,
        im = false;
        if (iC) {
            dV = '<span class="tip-select">请选择或继续输入...';
            var fw = "";
            for (var i = 0; i < it.length; i++) {
                fw = iC + it[i].region;
                if (fw.toLowerCase().indexOf(this.cO["username"].value.toLowerCase()) >= 0) {
                    dV += '<span class=" opt ' + (gK ? "": "opt-hover ") + ' ">' + fw + "</span>";
                    gK = true;
                    if (fw == this.cO["username"].value) im = true
                }
            }
            dV += "</span>"
        }
        return gK && !im ? dV: ""
    };
    cH.kh = function() {
        var cJ = this.gB();
        if (cJ) {
            if (e.fP(v.dE(arguments[0]), "login-1")) {
                if (cJ.username.indexOf("corp.netease.com") != -1) {
                    cJ.username = cJ.username.replace("@corp.netease.com", "");
                    this.oQ(cJ)
                } else window.location.href = "https://reg.163.com/logins.jsp?type=1&product=yxp&username=" + encodeURIComponent(cJ.username) + "&password=" + encodeURIComponent(cJ.password) + "&url=" + encodeURIComponent(window.location.href)
            }
        }
    };
    cH.oQ = function(cJ) {
        j.hk("/ajax.do?action=corpLogin", {
            query: cJ,
            type: "json",
            onload: this.oP.cC(this)
        })
    };
    cH.oP = function(cA) {
        if (cA.result) {
            if (this.xO) {
                window.location.href = this.xS
            } else {
                window.location.reload()
            }
        } else alert("登录失败，请检查用户名跟密码是否输入正确")
    };
    cH.dH = function() {
        this.eC.dH();
        dc.dH.apply(this, arguments);
        return this
    };
    cH.dZ = function() {
        try {
            window.close();
            window.setTimeout(function() {
                alert("您的浏览器暂不支持自动关闭，请手动关闭浏览器!")
            },
            0)
        } catch(ex) {
            alert("您的浏览器暂不支持自动关闭，请手动关闭浏览器!")
        }
        return this
    }
})();
var g_daofu_data = {
    "北京-北京市-东城区": "",
    "北京-北京市-西城区": "",
    "北京-北京市-朝阳区": "",
    "北京-北京市-丰台区": "",
    "北京-北京市-石景山区": "",
    "北京-北京市-海淀区": "",
    "北京-北京市-门头沟区": "",
    "北京-北京市-房山区": "",
    "北京-北京市-通州区": "",
    "北京-北京市-顺义区": "",
    "北京-北京市-昌平区": "",
    "北京-北京市-大兴区": "",
    "北京-北京市-怀柔区": "",
    "北京-北京市-平谷区": "",
    "北京-北京市-密云县": "",
    "北京-北京市-延庆县": "",
    "北京-北京市-其他地区": "",
    "天津-天津市-和平区": "",
    "天津-天津市-河东区": "",
    "天津-天津市-河西区": "",
    "天津-天津市-南开区": "",
    "天津-天津市-河北区": "",
    "天津-天津市-红桥区": "",
    "天津-天津市-东丽区": "",
    "天津-天津市-西青区": "辛口镇,精武镇,大寺镇",
    "天津-天津市-津南区": "葛沽镇,辛庄镇,双桥河镇,办事处",
    "天津-天津市-北辰区": "天穆镇,北仓镇,双街镇,大张庄镇,西堤头镇",
    "天津-天津市-武清区": "梅厂镇,崔黄口镇,大良镇,下伍旗镇,大孟庄镇,泗村店镇,河西务镇,城关镇,东马圈镇,黄花店镇,石各庄镇,王庆坨镇,汊沽港镇,河北屯镇,上马台镇,大王古庄镇,陈咀镇,豆张庄乡,大黄堡乡,高村乡,白古屯乡",
    "天津-天津市-宝坻区": "核桃园村,张辛庄村,纪家园村,梁庄,孙家屯",
    "天津-天津市-滨海新区": "井上,港西街,古林街,官港,太平镇,小王庄镇,刘岗庄村,栖凤北里,南里,刘塘庄村,东河筒,西河筒,新房子村,南台,银河里,洋闸,东抛村",
    "天津-天津市-宁河县": "宁河镇,苗庄镇,丰台镇,岳龙镇,板桥镇,潘庄镇,造甲城镇,七里海镇,大北涧沽镇,东棘坨镇,北淮淀乡,俵口乡,廉庄子乡",
    "天津-天津市-静海县": "官屯镇,谭庄子村,张庄子村,东西禅房村,当禅房村,东滩头村,子牙镇",
    "天津-天津市-蓟县": "北大井,北张庄,底庄,下庄子,莫庄子",
    "河北-石家庄市-长安区": "五七路,滹陀河,高营大街,工业区,北高营,山水家园",
    "河北-石家庄市-桥东区": "乡,镇,村",
    "河北-石家庄市-桥西区": "乡,镇,村",
    "河北-石家庄市-新华区": "上京,杜北,五七路,学府路,宜安,康村,黄壁庄,动物园,植物园",
    "河北-石家庄市-辛集市": "乡,镇,村",
    "河北-石家庄市-藁城市": "乡,镇,村",
    "河北-石家庄市-鹿泉市": "乡,镇,村",
    "河北-唐山市-路南区": "乡,镇,村,西电路,热电厂,将军坨,钱家营,女织寨,三角地,岳各庄,老谢庄,国矿楼,东礼尚庄",
    "河北-唐山市-路北区": "乡,镇,村,罗各庄,梁各庄,东工房",
    "河北-唐山市-开平区": "乡,镇,村,发电厂,开发区,京唐港,曹妃甸",
    "河北-唐山市-遵化市": "乡,镇,村",
    "河北-秦皇岛市-海港区": "乡,镇,村",
    "河北-秦皇岛市-山海关区": "乡,镇,村",
    "河北-秦皇岛市-北戴河区": "乡,镇,村",
    "河北-秦皇岛市-经济技术开发区": "乡,镇,村",
    "河北-秦皇岛市-昌黎县": "乡,镇,村",
    "河北-邯郸市-邯山区": "乡,镇,村",
    "河北-邯郸市-丛台区": "乡,镇,村",
    "河北-邯郸市-复兴区": "乡,镇,村",
    "河北-邯郸市-邯郸县": "乡,镇,村",
    "河北-邢台市-桥东区": "乡,镇,村",
    "河北-邢台市-桥西区": "乡,镇,村",
    "河北-邢台市-邢台县": "乡,镇,村",
    "河北-邢台市-南和县": "乡,镇,村",
    "河北-邢台市-巨鹿县": "乡,镇,村",
    "河北-邢台市-平乡县": "乡,镇,村",
    "河北-邢台市-沙河市": "乡,镇,村",
    "河北-保定市-新市区": "乡,镇,村",
    "河北-保定市-北市区": "乡,镇,村",
    "河北-保定市-南市区": "乡,镇,村",
    "河北-保定市-高开区": "乡,镇,村",
    "河北-保定市-清苑县": "乡,镇,村",
    "河北-保定市-涞水县": "乡,镇,村",
    "河北-保定市-徐水县": "乡,镇,村",
    "河北-保定市-定兴县": "乡,镇,村",
    "河北-保定市-高阳县": "乡,镇,村",
    "河北-保定市-易县": "乡,镇,村",
    "河北-保定市-博野县": "乡,镇,村",
    "河北-保定市-雄县": "乡,镇,村",
    "河北-保定市-定州市": "胜利客车厂,国华电厂,部队,乡,镇,村",
    "河北-保定市-安国市": "乡,镇,村",
    "河北-保定市-高碑店市": "部队,乡,镇,村",
    "河北-张家口市-桥东区": "乡,镇,村",
    "河北-张家口市-桥西区": "乡,镇,村",
    "河北-张家口市-宣化区": "乡,镇,村",
    "河北-张家口市-宣化县": "乡,镇,村",
    "河北-承德市-双桥区": "乡,镇,村",
    "河北-承德市-双滦区": "乡,镇,村",
    "河北-沧州市-新华区": "旧州,采油三厂,输油管理处,大化三区,鞠官屯,大化TDI,石油北库,炼油厂,炼油厂生活区,机场,部队,学校,兴济,杜生,信箱,屯,乡,镇,村,工业区",
    "河北-沧州市-运河区": "华润热电,工业区,师专,医专,职业技术学院,农科院,力通联,管理处,307国道,307辅道,学校,开发区,工业区,乡,镇,村,屯",
    "河北-沧州市-沧县": "开发区,工业区,乡,镇,村",
    "河北-沧州市-任丘市": "开发区,工业区,乡,镇,村",
    "河北-廊坊市-安次区": "裘庄,码头",
    "河北-廊坊市-广阳区": "万庄,乡,镇,村",
    "河北-廊坊市-经济技术开发区": "",
    "河北-廊坊市-霸州市": "乡,镇,村",
    "河北-廊坊市-三河市": "乡,镇,村",
    "河北-衡水市-桃城区": "大麻森,乡,镇,村",
    "河北-衡水市-枣强县": "乡,镇,村",
    "河北-衡水市-景县": "乡,镇,村",
    "河北-衡水市-冀州市": "乡,镇,村",
    "山西-太原市-小店区": "乡,北格镇,西温庄,刘家堡,李家庄村,杜家寨村,西贾村,辛村,戴家堡村,北六堡,西荣,上营,北营南路,北营北路,光明路,农科南路,农科北路,龙堡村,郜村,小北格村,三贤村,东桥村,薛甸村,西攒村,农场",
    "山西-太原市-迎泽区": "乡,王家峰,郭家峰,柳贯沟村,赵北坟村,马庄,店坡村,前水峪,后水峪,观家峪,万山沟",
    "山西-太原市-杏花岭区": "乡,孟家井,山庄头村,河里头村,下岭,瓜子沟,大窑头村,东山煤矿,小枣沟,东沟,牛坨村",
    "山西-太原市-尖草坪区": "乡,向阳镇,阳曲镇,马头水乡,柏板乡,西墕乡,新兰路,光社乡,中涧河乡,生态园区,化工厂,电厂,新店村",
    "山西-太原市-万柏林区": "乡,王封镇,化客头,南峪,神地,大窳,河神殿,圪垛,北银角,白家庄,大虎峪,杜儿坪,小虎峪,西铭矿及西铭路,柴村,矿区,西矿街,南寒,北寒,河捞湾,袁家庄,上庄,呼延,西张村,南社",
    "山西-太原市-晋源区": "乡,姚村镇,牛家口村,,西草寒,黄楼村,枣元头,洞儿沟,槐树底,珠环村,晋源镇,晋祠镇,三家村,西镇村,南瓦窑村",
    "山西-太原市-清徐县": "乡,镇,村",
    "山西-太原市-古交市": "村,河口镇,镇城底镇,马兰镇,阁上乡,加乐泉乡,梭峪乡,岔口乡,常安乡,原相乡,邢家社乡,马兰矿,屯兰矿,镇城底矿,郝家庄,古钢,河口,矾石沟",
    "山西-大同市-城区": "一电厂,大庆西路,大唐国际有限公司,十里铺村,西水磨村,改牛道东村,新添堡村,房子村,青年路以南,七里村,五里淀村,阳合坡村,拥军西路,白马城村,梓家村,古城村,马家堡村,齐家坡村,沙岭村,滨河路以东,曹夫楼村,五爱村,陈庄,解庄,倍家皂镇,蔚州瞳村",
    "山西-大同市-矿区": "煤峪口,永定庄,同家粮,四老沟,忻州窑,白潼矿,雁阳矿,挖金湾,晋华宫,1马脊粮,大斗沟,王村矿,云岗矿,雁子山,四台矿,塔山矿,同心矿",
    "山西-大同市-南郊区": "村,口泉乡,赵家小村,脱皮村,三井村,东河河乡,马军营乡",
    "山西-大同市-浑源县": "乡,镇,村",
    "山西-大同市-左云县": "乡,镇,村",
    "山西-阳泉市-城区": "乡,镇,村",
    "山西-阳泉市-矿区": "乡,镇,村",
    "山西-阳泉市-郊区": "乡,镇,村",
    "山西-长治市-城区": "乡,镇,村",
    "山西-长治市-长治县": "乡,镇,村",
    "山西-长治市-襄垣县": "乡,镇,村",
    "山西-长治市-长子县": "乡,镇,村",
    "山西-晋城市-城区": "乡,镇,村",
    "山西-晋城市-沁水县": "村,中村镇,嘉峰镇,端氏镇,十里乡,土沃乡,王必乡,王寨乡,东峪乡,苏庄乡,张村乡,固县乡,郑庄乡,郑村乡,胡底乡,柿庄乡,樊庄乡,樊村河乡",
    "山西-晋城市-阳城县": "村,润城镇,获泽镇,芹池乡,演礼乡,次营镇,横河乡,河北镇,东冶镇,东冶镇,蟒河镇,北留镇,八甲口镇,町店镇,西河乡,驾岭乡",
    "山西-晋城市-高平市": "村,北留,润城,八甲口,次营,河北,东冶镇,尹庄,白桑,叮店,寺头,芹池,羊泉,西河,演礼,固垄董封,李吃塔,黄河,驾岭,三窑,西交,杨柏,台头,桑林乡",
    "山西-朔州市-朔城区": "耿庄,下庄头",
    "山西-朔州市-平鲁区": "乡,镇,村",
    "山西-晋中市-榆次区": "乡,镇,村",
    "山西-晋中市-寿阳县": "乡,镇,村",
    "山西-晋中市-太谷县": "乡,镇,村",
    "山西-晋中市-祁县": "乡,镇,村",
    "山西-晋中市-平遥县": "乡,镇,村",
    "山西-晋中市-灵石县": "乡,镇,村",
    "山西-晋中市-介休市": "乡,镇,村",
    "山西-运城市-盐湖区": "大渠办,解州镇,龙居镇,陶村镇,泓芝驿镇,北相镇,三路里镇,东郭镇,席张乡,金井乡,王范乡,冯村乡,上郭乡,上王乡",
    "山西-运城市-临猗县": "乡,镇,村",
    "山西-运城市-万荣县": "村,荣河镇,裴庄,光华,通化,黄铺,汉薛,贾村,高村,南章,李凹乡",
    "山西-运城市-闻喜县": "村,东镇,郭家庄,河底镇,石梅乡,薛殿镇,凹底镇,裴社乡",
    "山西-运城市-垣曲县": "乡,镇,村",
    "山西-运城市-芮城县": "杜庄镇,阳城镇,大王镇,薛庄镇,陌南镇,东留乡,南卫乡",
    "山西-运城市-永济市": "乡,镇,村",
    "山西-运城市-河津市": "小梁乡,下化乡,赵家庄乡,阳村乡,柴家乡,僧楼镇,樊村镇,清漳",
    "山西-忻州市-忻府区": "乡,镇,村",
    "山西-忻州市-繁峙县": "乡,镇,村",
    "山西-忻州市-河曲县": "乡,镇,村",
    "山西-忻州市-偏关县": "乡,镇,村",
    "山西-忻州市-原平市": "乡,镇,村",
    "山西-临汾市-尧都区": "乡,镇,村",
    "山西-临汾市-翼城县": "乡,镇,村",
    "山西-临汾市-襄汾县": "乡,镇,村",
    "山西-临汾市-洪洞县": "乡,镇,村",
    "山西-临汾市-侯马市": "乡,镇,村",
    "山西-临汾市-霍州市": "乡,镇,村",
    "山西-吕梁地区-离石区": "乡,镇,村",
    "山西-吕梁地区-孝义市": "乡,镇,村",
    "山西-吕梁地区-汾阳市": "乡,镇,村",
    "山西-吕梁地区-文水县": "乡,镇,村",
    "山西-吕梁地区-交城县": "乡,镇,村",
    "山西-吕梁地区-柳林县": "乡,镇,村",
    "山西-吕梁地区-方山县": "乡,镇,村",
    "内蒙古-呼和浩特市-新城区": "开发区,工业区,乡,镇,村",
    "内蒙古-呼和浩特市-回民区": "开发区,工业区,乡,镇,村",
    "内蒙古-呼和浩特市-玉泉区": "开发区,工业区,乡,镇,村,监狱",
    "内蒙古-呼和浩特市-和林格尔县": "开发区,工业区,乡,镇,村",
    "内蒙古-包头市-东河区": "开发区,工业区,乡,镇,萨木佳,后营子村,邓家营,子南海村,黄河大桥,张家营",
    "内蒙古-包头市-昆都仑区": "开发区,工业区,乡,镇,村",
    "内蒙古-包头市-青山区": "开发区,工业区,乡,镇,村",
    "内蒙古-包头市-固阳县": "开发区,工业区,乡,镇,村",
    "内蒙古-乌海市-海勃湾区": "开发区,工业区,乡,镇,村",
    "内蒙古-乌海市-海南区": "开发区,工业区,乡,镇,村",
    "内蒙古-乌海市-乌达区": "开发区,工业区,乡,镇,村",
    "内蒙古-赤峰市-红山区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-赤峰市-元宝山区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-赤峰市-松山区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-通辽市-科尔沁区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-鄂尔多斯市-东胜区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-兴安盟-乌兰浩特市": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-锡林郭勒盟-锡林浩特市": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-乌兰察布市-集宁区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-巴彦淖尔市-临河区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-巴彦淖尔市-五原县": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-巴彦淖尔市-磴口县": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "内蒙古-阿拉善盟-阿拉善左旗": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "辽宁-沈阳市-和平区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-沈阳市-沈河区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-沈阳市-大东区": "三家子,文官街道,朱尔屯,望花南街,西三家子,榆林大街,望花北街,木匠屯,乡,镇,村,屯,沟,堡,开发区",
    "辽宁-沈阳市-皇姑区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-沈阳市-铁西区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-沈阳市-苏家屯区": "乡,镇,村,庄,屯,沟,堡,开发区,梧桐大街,八一镇,红菱堡镇,林盛堡镇,沙河铺镇,十里河镇,陈相屯镇,姚千户屯镇,王纲堡乡,永乐,工业园,煤业集团,大沟乡,白清寨乡,佟沟乡,周边乡",
    "辽宁-沈阳市-东陵区": "植物园,棋盘山,旧站,东湖街道,满堂街道,深井子街道,桃仙街道,古台南屯,祝家街道,李相街道,高坎街道,高坎街道,王滨沟乡,汪家,南大甸子,后桑林子,前桑林子,营城子,孤家子,五三乡林业站,古城子,兴农,干河子,陵前堡,英达,东陵公园,民俗风光园,高尔夫俱乐部,森林公园,滑雪场,机器厂,航天旋压成形,华晔食品厂,沈阳惠恩,处理厂,古城镇",
    "辽宁-沈阳市-于洪区": "沈大路,沙岭镇,沙岭街道,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-沈阳市-浑南新区": "乡,镇,村,庄,屯,沟,堡,开发区,梧桐大街,八一镇,红菱堡镇,林盛堡镇,沙河铺镇,十里河镇,陈相屯镇,姚千户屯镇,王纲堡乡,永乐,工业园,煤业集团,大沟乡,白清寨乡,佟沟乡,周边乡",
    "辽宁-沈阳市-辽中县": "乡,镇,村,庄,屯,沟,堡,开发区,茨榆坨,采油厂",
    "辽宁-沈阳市-康平县": "康平电厂,北三家子,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-沈阳市-法库县": "乡,镇,村,庄,屯,沟,堡,开发区,陶瓷城",
    "辽宁-沈阳市-新民市": "采油厂,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-大连市-中山区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-大连市-西岗区": "大窑湾港区,大孤山,德胜镇,煤窑村,登沙河镇,大地村,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-大连市-沙河口区": "岔安村,柳树南街,旅顺南路,龙王塘村,小平岛,黄埔路,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-大连市-甘井子区": "革镇堡,大连湾,后盐,山中村,北山村,李官,羊圈,大连湾,营城子,工业区,大黑石,乡,镇,村,庄,屯,沟,堡,夏家河子,西北路,海茂村,523厂,双友街",
    "辽宁-大连市-旅顺口区": "长岭,铁山,北海,王家,张家,双岛,长城镇,龙王塘,江西街道,乡,镇,村,庄,屯,沟,堡",
    "辽宁-大连市-金州区": "港区,开发区,大孤山,小孤山,金石滩,德胜镇,煤窑村,登沙河镇,大地村,亮甲店街道,登沙河街道,三十里堡街道,二十里堡街道,华家屯镇,杏树屯镇,大魏家镇,向应镇,七顶山满族乡,马桥子街道,海青岛街道,新港街道,大孤山街道,董家沟街道,满家滩街道,湾里街道,大李家镇,得胜镇,乡,镇,村,庄,屯,沟,堡,石河镇,龙王庙,青山村,工业园,风景区",
    "辽宁-大连市-瓦房店市": "复州城镇,松树镇,得利寺镇,万家岭镇,许屯镇,永宁镇,谢屯镇,炮台镇,李店镇,老虎屯镇,东岗镇,长兴岛镇,李官镇,仙浴湾镇,赵屯乡,土城乡,阎店乡,西杨乡,驼山乡,三台满族乡,交流岛乡,泡崖乡,杨家满族乡,莲山镇,马三家,蔡房身,华铜,那屯,楼房村,夹板沟,马场,肖家炉,扎窑,万家岭,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-大连市-普兰店市": "土城乡,丛王庙,莲山,城子坦镇,大刘家镇,双塔镇,安波镇,四平镇,沙包镇,瓦窝镇,元台镇,打谭镇,夹河庙镇,莲山镇,星台镇,同益乡,墨盘乡,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-大连市-庄河市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-鞍山市-铁东区": "鞍钢厂,前峪村,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-鞍山市-铁西区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-鞍山市-立山区": "沙河镇,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-鞍山市-千山区": "旧堡,眼前山铁矿,大孤山镇,倪家台,齐大山镇,樱桃园,大红旗,腾鳌,汤岗子,邢阳气,鞍山城,唐家房镇,乡,鞍腾路,鞍郑路,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-鞍山市-台安县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-鞍山市-岫岩满族自治县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-鞍山市-海城市": "管理区,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-抚顺市-新抚区": "青年路,周边乡,镇,村,屯,沟,堡,开发区",
    "辽宁-抚顺市-望花区": "五老新区,古城子街道,田屯,塔峪镇,青台子,千台山,石文,南沟,四方台,海洋馆,鞍山路,乡,镇,村,屯,沟,堡,开发区",
    "辽宁-抚顺市-顺城区": "葛布新村,前甸镇,方晓,北沟,小东沟,滴台,詹家村,碾盘乡,河北乡,会元乡,上马乡",
    "辽宁-抚顺市-抚顺县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-本溪市-平山区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-本溪市-溪湖区": "火连寨,石桥子,东风街道,周边乡,歪头山镇,张其寨,桥头镇,村,庄,屯,沟,堡,开发区",
    "辽宁-本溪市-明山区": "东兴街道,牛心台街道,卧龙街道,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-本溪市-本溪满族自治县": "乡,镇,村,庄,屯,沟,堡,开发区,香磨大桥",
    "辽宁-本溪市-桓仁满族自治县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-丹东市-元宝区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-丹东市-振兴区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-丹东市-振安区": "同兴镇,太平湾,五龙背,汤山城,九连城,金矿街道,楼房镇乡,古城路,外环路",
    "辽宁-丹东市-宽甸满族自治县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-丹东市-东港市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-丹东市-凤城市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-锦州市-古塔区": "乡,镇,村,庄,屯,沟,堡,开发区,三屯乡,金屯乡,重庆路",
    "辽宁-锦州市-凌河区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-锦州市-太和区": "乡,镇,村,庄,屯,沟,堡,开发区,北效乡,新民乡,女儿河乡,大薛乡,兴隆乡,兴隆南里,宣仁里,合金里,铁合金厂,钢厂,发电厂,汤河子镇",
    "辽宁-锦州市-黑山县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-锦州市-义县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-锦州市-凌海市": "乡,镇,村,庄,屯,沟,堡,开发区,北效乡,新民乡,女儿河乡,大薛乡,兴隆乡",
    "辽宁-营口市-站前区": "监狱,农场,盼盼集团,乡,镇,村,庄,屯,沟,堡,鞍钢集团",
    "辽宁-营口市-西市区": "",
    "辽宁-营口市-鲅鱼圈区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-营口市-老边区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-营口市-盖州市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-营口市-大石桥市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-阜新市-海州区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-阜新市-新邱区": "乡,镇,村,庄,屯,沟,堡,开发区,基街道,中部街道,北部街道,南部街道",
    "辽宁-阜新市-太平区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-阜新市-清河门区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-阜新市-细河区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-阜新市-阜新蒙古族自治县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-阜新市-彰武县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-辽阳市-白塔区": "",
    "辽宁-辽阳市-文圣区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-辽阳市-宏伟区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-辽阳市-弓长岭区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-辽阳市-太子河区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-辽阳市-辽阳县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-盘锦市-双台子区": "乡,镇,村,庄,屯,沟,堡,开发区,勃海街道",
    "辽宁-盘锦市-兴隆台区": "新工街道,于楼街道,友谊街道,曙光街道,欢喜岭街道,平安街道,新生街道,红村街道,高升街道,沈采街道,锦采街道,茨采街道,钻井二公司,高升街,陈屯村,田家镇,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-盘锦市-大洼县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-盘锦市-盘山县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-铁岭市-银州区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-铁岭市-清河区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-铁岭市-铁岭县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-铁岭市-西丰县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-铁岭市-昌图县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-铁岭市-调兵山市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-铁岭市-开原市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-朝阳市-双塔区": "龙山街,机械厂,开发区,凌塔酒厂,朝阳大街,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-朝阳市-龙城区": "向阳街,长江路,马山街,中山大街,竹林路,电厂,乡,镇,村,庄,屯,沟,堡,开发区,工业园",
    "辽宁-朝阳市-朝阳县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-朝阳市-建平县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-朝阳市-喀喇沁左翼蒙古族自治县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-朝阳市-北票市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-朝阳市-凌源市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-葫芦岛市-连山区": "连山大街,乡,镇,村,庄,屯,沟,堡,开发区,刘台子,二台子,北大营,东城区,杨仗子,北港乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-葫芦岛市-龙港区": "锦葫路,锦葫北路,锦葫南路,船厂周围,望海寺周围,锌厂周围,西山坡周围,马仗房周围,乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-葫芦岛市-绥中县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-葫芦岛市-建昌县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "辽宁-葫芦岛市-兴城市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "吉林-长春市-南关区": "新立城镇,永春镇,乐山镇,大南镇,长伊公路,长平高速",
    "吉林-长春市-宽城区": "合隆镇,奋进乡,兰家镇,长白公路,北郊,监狱,一间卜,兰家镇",
    "吉林-长春市-朝阳区": "双德乡,大屯镇,长沈公路,云鼎路",
    "吉林-长春市-二道区": "兴隆山镇,三道镇,长吉公路,北金钱堡,紫荆花,英俊乡,长青村",
    "吉林-长春市-绿园区": "合心镇,工业园,城西镇,靠山屯,皓月大路,东山小区",
    "吉林-长春市-双阳区": "乡,镇,村,庄,屯,沟,堡,奢岭镇,鹿乡,大营子,齐家,尚家,部队,旅游学院",
    "吉林-长春市-九台市": "乡,镇,村,庄,屯,沟,堡,部队,营城子,卡伦,兴隆山,土门岭",
    "吉林-长春市-德惠市": "乡,镇,村,庄,屯,沟,堡,部队,营城子,卡伦,兴隆山,土门岭",
    "吉林-吉林市-昌邑区": "乡,镇,村,庄,屯,沟,堡,开发区,下甸子,九站,双吉街,九站街,铁合金厂",
    "吉林-吉林市-龙潭区": "乡,镇,村,庄,屯,沟,堡,开发区,啤酒厂,吉化公司,化肥厂,龙北路,阳泉路,滨江东路,乙烯路,黎明路,华丹大街,鹿场街",
    "吉林-吉林市-船营区": "乡,镇,村,庄,屯,沟,堡,开发区,欢喜岭,军民路,西团山",
    "吉林-吉林市-丰满区": "乡,镇,村,庄,屯,沟,堡,开发区,丰满街,发电厂,联化,风景区",
    "吉林-四平市-铁西区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "吉林-四平市-铁东区": "乡,镇,村,庄,屯,沟,堡,开发区,环城路",
    "吉林-辽源市-龙山区": "乡,镇,村,庄,屯,沟,堡,部队",
    "吉林-辽源市-西安区": "乡,镇,村,庄,屯,沟,堡,开发区,人民大街,和宁街,太安路,矿电大街,仙城大街,安光路,矿建北胡同,丰寿路",
    "吉林-辽源市-东丰县": "乡,镇,村,庄,屯,沟,堡,部队",
    "吉林-通化市-东昌区": "乡,镇,村,庄,屯,沟,堡,部队",
    "吉林-通化市-二道江区": "乡,镇,村,庄,屯,沟,堡,部队",
    "吉林-通化市-通化县": "乡,镇,村,庄,屯,沟,堡,部队",
    "吉林-通化市-梅河口市": "乡,镇,村,庄,屯,沟,堡,部队",
    "吉林-白山市-八道江区": "乡,镇,村,庄,屯,沟,堡,开发区,通沟区,板石,石人",
    "吉林-白山市-江源区": "乡,镇,村,庄,屯,沟,堡,部队",
    "吉林-白山市-抚松县": "乡,镇,村,庄,屯,沟,堡,开发区,双河村,翻身屯,胜利屯,高丽城,后崴子",
    "吉林-松原市-宁江区": "大洼镇,善友镇,毛都站镇,新城乡,伯都乡,八郎镇,新庙镇,王府站镇,增盛镇,永平乡,宝甸乡,石桥乡",
    "吉林-白城市-洮北区": "乡,镇,村,庄,屯,沟,堡,开发区,四方坨子,五棵数,坦途,东平,英华",
    "吉林-白城市-镇赉县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "吉林-白城市-通榆县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "吉林-白城市-洮南市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "吉林-白城市-大安市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "吉林-延边州-延吉市": "汽贸城,依兰镇,光进村,东新,元杰小区,朝阳川,延龙路,猫儿山,白山实验学校,任平村,延吉市宾馆,春光小学,门窗厂,铝厂,兴安社区,东明,管理站",
    "黑龙江-哈尔滨市-道里区": "乡,镇,村,庄,屯,沟,堡,开发区,群立乡,四方台,薛家,新发镇,新农镇,茶家,机场路,新三中,镇乡村屯,新船路,加油站,宜居家园",
    "黑龙江-哈尔滨市-南岗区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-哈尔滨市-道外区": "天恒大街,东风镇,水源路,民主乡,哈同公路,团结镇,水泥厂,水泥路,镇乡,村,屯,水源一道街,水源二道街,水泥三道街,龙江电工厂,防水材料厂,第十煤场,哈尔滨跃进实业集团,新一头道街,新一四道街,新一五道街,前进胡同,河堤街,园家屯,哈化学纤维厂,哈给水设备厂,哈换热器厂,哈东路,防汛通道,韩家哇子,东方玻璃纲厂,道口头道街,省青年农场,道口三道街,道口五道街,朝鲜屯,曙光头道街,曙光四道街,铸钢将诶,四期煤炭供应站,新立屯,东化工路,哈尔滨太阳鸟制药厂,哈化工十厂,化总道街,化总二道街,东园学校,靖宇橡胶厂,哈一机集团公司,东棵北头道街,东棵一道街,东棵四道街,哈尔滨关照实业有限公司,油漆化工厂,哈尔滨龙信彩色压型钢板有限公司,市殡仪服务中心,东华苑,禧龙陶瓷大市场,化工路",
    "黑龙江-哈尔滨市-香坊区": "乡,镇,村,庄,屯,沟,堡,西柞树,老虎团,香福路,成高子,哈成路,黎明乡,朝阳镇,前宏路,香页街,幸福乡,农场,南果园街,幸福镇,双榆街,哈阿公路,巴安里街,进乡街,外经路,荣进街,团结路,轧钢街,邻厂街,黎明大市场,北柞树林,曹家窝堡,曹家窝棚,红星路,红星村,黎明监狱,孙家窝棚,公滨路,互助街,香乐街,金山路,后张家油坊,前张家油坊,印染街,绢纺街,东方红农场,后张家村",
    "黑龙江-哈尔滨市-平房区": "乡,镇,村,庄,屯,沟,堡,开发区,哈双路,哈双北路",
    "黑龙江-哈尔滨市-松北区": "乡,镇,村,庄,屯,沟,堡,糖厂,黑科技学校,松谷镇,船厂,万宝大道",
    "黑龙江-哈尔滨市-阿城区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-哈尔滨市-依兰县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-哈尔滨市-方正县": "乡,镇,村,庄,屯,沟,堡,城北新区,汽配城南",
    "黑龙江-哈尔滨市-巴彦县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-哈尔滨市-通河县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-哈尔滨市-双城市": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-哈尔滨市-尚志市": "乡,镇,村,庄,屯,沟,堡,一面坡,亚布力",
    "黑龙江-哈尔滨市-五常市": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-龙沙区": "乡,镇,村,庄,屯,沟,堡,开发区,大民,朝鲜屯",
    "黑龙江-齐齐哈尔市-建华区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "黑龙江-齐齐哈尔市-铁锋区": "乡,镇,村,庄,屯,沟,堡,开发区,树新路,火葬场,炮台屯,碾北公路,结核医院",
    "黑龙江-齐齐哈尔市-富拉尔基区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-碾子山区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-龙江县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-依安县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-泰来县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-甘南县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-克东县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-齐齐哈尔市-讷河市": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-鸡西市-虎林市": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-鸡西市-密山市": "乡,镇,村,庄,屯,沟,堡,开发区,铁西村,北大营",
    "黑龙江-鹤岗市-向阳区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-鹤岗市-工农区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-鹤岗市-南山区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-鹤岗市-萝北县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-双鸭山市-尖山区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-双鸭山市-集贤县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-双鸭山市-宝清县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-双鸭山市-饶河县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-大庆市-萨尔图区": "乡,镇,村,庄,屯,沟,堡,开发区,勇军村,采油三厂,登丰小区,大队,八一村,炼油厂,林源镇,电厂,解放村,胜利村,乳品厂,中兴北街,职业学院,中兴南街,中兴北街,万宝石材大市场,勤奋路,奋勇路,采油一厂,富强村",
    "黑龙江-大庆市-让胡路区": "乡,镇,村,庄,屯,沟,堡,开发区,采油六厂,银浪村,喇嘛甸,西红路,西泰路,方晓,润滑油,红卫星,四新,西晓街",
    "黑龙江-大庆市-肇源县": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-伊春市-伊春区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-伊春市-铁力市": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-佳木斯市-永红区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-佳木斯市-向阳区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-佳木斯市-前进区": "乡,镇,村,庄,屯,沟,堡",
    "黑龙江-佳木斯市-东风区": "乡,镇,村,庄,屯,沟,堡,开发区,安庆路",
    "黑龙江-七台河市-新兴区": "乡,镇,村,庄,屯,沟,堡,开发区,小五站,东风矿,新建四百,缸百,长兴,新立矿,新城小学,太和,大六,煤矿",
    "黑龙江-七台河市-桃山区": "乡,镇,村,庄,屯,沟,堡,开发区,煤矿",
    "黑龙江-七台河市-勃利县": "乡,镇,村,庄,屯,沟,堡,开发区,马场",
    "黑龙江-牡丹江市-东安区": "乡,镇,村,庄,屯,沟,堡,开发区",
    "黑龙江-牡丹江市-阳明区": "乡,镇,村,庄,屯,沟,堡,开发区,桦林,二发电,铁岭河",
    "黑龙江-牡丹江市-爱民区": "乡,镇,村,庄,屯,沟,堡,开发区,黄花",
    "黑龙江-牡丹江市-西安区": "乡,镇,村,庄,屯,沟,堡,开发区,温春",
    "黑龙江-牡丹江市-东宁县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "黑龙江-牡丹江市-林口县": "乡,镇,村,庄,屯,沟,堡,开发区",
    "黑龙江-牡丹江市-绥芬河市": "乡,镇,村,庄,屯,沟,堡,开发区,木材加工厂,南木材,建设,东环,南环",
    "黑龙江-牡丹江市-海林市": "乡,镇,村,庄,屯,沟,堡,开发区,柴河林业局",
    "黑龙江-牡丹江市-宁安市": "乡,镇,村,庄,屯,沟,堡,开发区,东京城",
    "黑龙江-牡丹江市-穆棱市": "乡,镇,村,庄,屯,沟,堡,开发区",
    "黑龙江-黑河市-爱辉区": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-黑河市-嫩江县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-黑河市-孙吴县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-黑河市-北安市": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-黑河市-五大连池市": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-北林区": "办事处,开发区,哈伊路,绥兰路,致富路,大修厂,机械厂,烟草公司,油脂厂,管区,管理区,四十一场,绥巴路,兴绥路,绥庆路,三角建,铁北街,血站,劳教所,农垦,东风路",
    "黑龙江-绥化市-望奎县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-兰西县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-青冈县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-庆安县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-明水县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-绥棱县": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-安达市": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-绥化市-肇东市": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场",
    "黑龙江-大兴安岭地区-加格达奇区": "乡,镇,村,庄,屯,沟,堡,开发区,农场,农厂,矿区,林场,职业学院",
    "上海-上海市-黄浦区": "",
    "上海-上海市-卢湾区": "",
    "上海-上海市-徐汇区": "",
    "上海-上海市-长宁区": "",
    "上海-上海市-静安区": "",
    "上海-上海市-普陀区": "",
    "上海-上海市-闸北区": "",
    "上海-上海市-虹口区": "",
    "上海-上海市-杨浦区": "",
    "上海-上海市-闵行区": "",
    "上海-上海市-宝山区": "",
    "上海-上海市-嘉定区": "",
    "上海-上海市-浦东新区": "",
    "上海-上海市-金山区": "",
    "上海-上海市-松江区": "",
    "上海-上海市-青浦区": "",
    "上海-上海市-奉贤区": "",
    "上海-上海市-崇明县": "横沙,长兴",
    "江苏-南京市-玄武区": "",
    "江苏-南京市-白下区": "",
    "江苏-南京市-秦淮区": "",
    "江苏-南京市-建邺区": "沙洲街道,双闸街道,江心洲街道",
    "江苏-南京市-鼓楼区": "",
    "江苏-南京市-下关区": "",
    "江苏-南京市-浦口区": "桥林镇,永宁镇,汤泉镇,星甸镇,石桥镇,乌江镇,盘城镇,洪流村,浦新路,兴浦路,夹河新村,轮渡街,轮渡桥,珍珠泉大酒店,度假区,定山寺,老山,码头,港务公司",
    "江苏-南京市-栖霞区": "栖霞街道,龙潭街道,靖安街道,八卦洲街道",
    "江苏-南京市-雨花台区": "西善桥,西善花苑,油坊桥,双闸,天保桥,乡",
    "江苏-南京市-江宁区": "秣陵镇,淳化街道,禄口街道,江宁街道,谷里街道,湖熟镇,横溪镇,铜井镇",
    "江苏-南京市-六合区": "冶山镇,八百桥镇,横梁镇,东沟镇,龙袍镇,玉带镇,瓜埠镇,程桥镇,竹镇镇,马集镇,马鞍镇,新篁镇",
    "江苏-南京市-高淳县": "阳江镇,砖墙镇,漆桥镇,固城镇,东坝镇,桠溪镇,乡,村",
    "江苏-无锡市-崇安区": "",
    "江苏-无锡市-南长区": "",
    "江苏-无锡市-北塘区": "",
    "江苏-无锡市-锡山区": "张泾镇,港下镇,东港镇,八士镇,东北塘,东湖塘,羊尖镇,鹅湖镇,荡口镇",
    "江苏-无锡市-惠山区": "长安镇,洛社镇,前洲镇,玉祁镇,堰桥镇",
    "江苏-无锡市-滨湖区": "胡埭镇,马山镇,陆区镇,前州镇,阳山镇,杨市镇,藕塘镇,南泉镇,新安镇,华庄镇,雪浪镇,东降镇,鸿山镇",
    "江苏-无锡市-新区": "",
    "江苏-无锡市-江阴市": "璜土镇,利港镇,申港镇,夏港镇,月城镇,青阳镇,徐霞客镇,南闸镇,云亭镇,华士镇,周庄镇,新桥镇,长泾镇,顾山镇,祝塘镇。江阴经济开发区：新城东办事处,港口办事处,石庄办事处,靖江园区",
    "江苏-无锡市-宜兴市": "大浦,张泽,茗岭,太华,元上,西渚,堰头,潘家坝,芳庄,邮堂,杨巷,新芳,新建,丰义,南新,闸口,南漕,分水,扶风,洋溪,周铁,芳桥,新庄街道",
    "江苏-徐州市-鼓楼区": "金山桥街道,东环街道,大黄山街道,大庙镇,大黄山镇",
    "江苏-徐州市-云龙区": "慧民小区",
    "江苏-徐州市-贾汪区": "贾汪镇,青山泉镇,大吴镇,紫庄镇,塔山镇,汴塘镇,江庄镇",
    "江苏-徐州市-泉山区": "三环南路,南湖以南,汉王,南望,屯里",
    "江苏-徐州市-丰县": "首羡镇,顺河镇,常店镇,欢口镇,师寨镇,华山镇,梁寨镇,范楼镇,孙楼镇,宋楼镇,大沙河镇,王沟镇,赵庄镇,大沙河林场",
    "江苏-徐州市-沛县": "龙固镇,杨屯镇,大屯镇,胡寨镇,魏庙镇,五段镇,张庄镇,张寨镇,敬安镇,河口镇,栖山镇,鹿楼镇,朱寨镇,安国镇",
    "江苏-徐州市-铜山县": "何桥镇,黄集镇,马坡镇,郑集镇,柳新镇,刘集镇,大彭镇,汉王镇,三堡镇,棠张镇,张集镇,房村镇,伊庄镇,单集镇,徐庄镇,大许镇,茅村镇,柳泉镇,利国镇,农场",
    "江苏-徐州市-睢宁县": "王集镇,双沟镇,岚山镇,李集镇,桃园镇,官山镇,高作镇,沙集镇,凌城镇,邱集镇,古邳镇,姚集镇,魏集镇,梁集镇,庆安镇",
    "江苏-徐州市-新沂市": "瓦窑镇,港头镇,唐店镇,合沟镇,草桥镇,窑湾镇,棋盘镇,王庄镇,新店镇,邵店镇,北沟镇,时集镇,高流镇,阿湖镇,双塘镇",
    "江苏-徐州市-邳州市": "运河镇,四户镇,宿羊山镇,八义集镇,土山镇,碾庄镇,港上镇,邹庄镇,占城镇,新河镇,八路镇,炮车镇,铁富镇,岔河镇,戴圩镇,陈楼镇,邢楼镇,戴庄镇,车辐山镇,燕子埠镇,赵墩镇,议堂镇,邳城农场,张楼农场",
    "江苏-常州市-天宁区": "",
    "江苏-常州市-钟楼区": "邹区,礼河镇,卜弋镇,泰村,殷村,乡",
    "江苏-常州市-戚墅堰区": "催桥镇,横林镇,洛阳镇,戴溪镇,横山桥三河口,新安镇,焦溪镇,芙蓉镇,郑陆镇,乡",
    "江苏-常州市-新北区": "春江镇,孟河镇,新桥镇,薛家镇,罗溪镇,西夏墅镇,圩塘,江边开发区,汤庄,孟河,小河,浦河,魏村,西夏墅,罗溪,安家,奔牛,春江,乡",
    "江苏-常州市-武进区": "洛阳镇,遥观镇,横林镇,郑陆镇,雪堰镇,前黄镇,礼嘉镇,嘉泽镇,湟里镇,奔牛镇,乡",
    "江苏-常州市-溧阳市": "上黄镇,戴埠镇,天目湖镇,别桥镇,上兴镇,竹箦镇,南渡镇,社渚镇,乡,村",
    "江苏-常州市-金坛市": "儒林镇,尧塘镇,直溪镇,朱林镇,薛埠镇,指前镇,乡,村",
    "江苏-苏州市-沧浪区": "",
    "江苏-苏州市-平江区": "",
    "江苏-苏州市-金阊区": "",
    "江苏-苏州市-虎丘区": "浒墅关,浒关镇,通安镇,大同路18号,加工区,镇湖镇,东渚镇",
    "江苏-苏州市-相城区": "阳澄湖镇,湘城镇,望亭镇,东桥镇,北桥镇,乡",
    "江苏-苏州市-新区": "",
    "江苏-苏州市-园区": "",
    "江苏-苏州市-常熟市": "梅李镇,海虞镇,新港镇,沙家浜镇,支塘镇,董浜镇,尚湖镇,辛庄镇,乡,村",
    "江苏-苏州市-张家港市": "保税区,沙钢集团,乐余镇,南丰镇,常阴沙,双山岛,东沙,永联,双塘,杏市,恬庄,夏市,高庄,西参,安庆,魏庄,程墩,何桥,周巷,青龙,韩山,牛桥,巨桥,金村,欧桥,横泾,刘村,三兴,洪桥,永盛,南港,光明,福安,红光,店岸,悦来,明星,常家,星火,交通,合丰,协仁,西港,元兴,乐杨,鼎盛,郁桥,建设,久生,耕余,厚生,福利,新海坝,老海坝,新凯,长丰,桥头,中山,新闸,朝东纡港村,龙潭,段山,晨阳镇,滩山,巫山,永兴,小明沙,双丰,福民,新套,朝南,中港,长山,东山,丰庄",
    "江苏-苏州市-昆山市": "石浦镇,花桥镇,车塘村,下桥村,陈巷村,朱家角村,甪直镇,周庄镇,锦溪镇,千灯镇,淀山湖镇,出口加工区,石牌村,双林村,建通村,石牌镇,金华村,白米村,盛庄村,林庄村,安头村,新塘村",
    "江苏-苏州市-吴江市": "震泽镇,桃源镇,七都镇,八都镇,菀坪社区,横扇镇,铜锣镇,青云镇,梅堰镇,盛泽镇,平望镇,乡,村",
    "江苏-苏州市-太仓市": "城厢镇,浮桥镇,璜泾镇,乡,村",
    "江苏-南通市-崇川区": "小海镇,新开镇,三谷镇,竹行镇,新港镇,观音山镇,通甲路,沙家圩,五步口村,人民东路,芦泾路,滨江路",
    "江苏-南通市-港闸区": "秦灶镇,横港,江通路,幸福乡,陈桥乡,平潮镇,大李港,涨滩,九圩港,天生港,马塘路,北市街,江边路,太平南路,世伦村,沿江路",
    "江苏-南通市-开发区": "乡,镇,村",
    "江苏-南通市-海安县": "老坝港镇,角斜镇,雅周镇,白甸镇,南莫镇,墩头镇,乡,村",
    "江苏-南通市-如东县": "乡,镇,村",
    "江苏-南通市-启东市": "大兴镇,南阳镇,惠丰镇,久隆镇,王鲍镇,合作镇,志良镇,兆民镇,海复镇,少直镇,向阳镇,东元镇,近海镇,寅阳镇,和合镇,新安镇,东海镇,启隆乡,乡,村",
    "江苏-南通市-如皋市": "雪岸镇,东陈镇,丁埝镇,白蒲镇,林梓镇,长江镇,江安镇,高明镇,常青镇,搬经镇,袁桥镇,乡,村",
    "江苏-南通市-通州市": "二甲镇,东社镇,三余镇,十总镇,骑岸镇,五甲镇,石港镇,四安镇,平潮镇,乡,村",
    "江苏-南通市-海门市": "常乐镇,麒麟镇,悦来镇,万年镇,三阳镇,四甲镇,货隆镇,余东镇,正余镇,包场镇,刘浩镇,东灶港镇,临江镇,王浩镇,树勋镇,海永乡,乡,村",
    "江苏-连云港市-连云区": "云山街道,板桥街道,连岛街道,中云街道,猴嘴街道,朝阳镇,宿城乡,高公岛乡,前三岛乡",
    "江苏-连云港市-新浦区": "南城镇,云台乡,花果山乡,宁海乡,农场,林场",
    "江苏-连云港市-海州区": "新坝镇,锦屏镇,乡",
    "江苏-连云港市-东海县": "白塔埠镇,浦南镇,黄川镇,石梁河镇,青湖镇,石榴镇,温泉镇,双店镇,桃林镇,洪庄镇,安峰镇,房山镇,平明镇,驼峰乡,南辰乡,横沟乡,李埝乡,山左口乡,石湖乡,曲阳乡,张湾乡,岗埠农场,村",
    "江苏-淮安市-清河区": "长西街道,长东街道,水渡口街道,东湖街道,新港街道,广州街道,钵池乡,乡,镇,淮海西路,华能电厂,杨庄",
    "江苏-淮安市-楚州区": "平桥镇,上河镇,马甸镇,朱桥镇,溪河镇,施河镇,车桥镇,泾口镇,流均镇,博里镇,仇桥镇,复兴镇,苏嘴镇,钦工镇,顺河镇,季桥镇,席桥镇,林集镇,南闸镇,范集镇,建淮乡,茭陵乡,宋集乡,南马厂乡,三堡乡,农场,建淮乡",
    "江苏-淮安市-淮阴区": "赵集镇,吴城镇,南陈集镇,码头镇,王兴镇,棉花庄镇,丁集镇,五里镇,徐溜镇,渔沟镇,吴集镇,西宋集镇,三树镇,韩桥乡,新渡乡,老张集乡,凌桥乡,袁集乡,刘老庄乡,古寨乡,嫩江路,工业园,韩桥乡,凌桥乡,刘老庄乡,古寨乡,新渡乡,袁集乡,老张集乡,王营镇,赵集镇,吴城镇,南陈集镇,码头镇,三树镇,西宋集镇,吴集镇,渔沟镇,丁集镇,五里镇,徐溜镇,王兴镇,棉花庄镇",
    "江苏-淮安市-清浦区": "浦楼街道,和平镇,武墩镇,盐河镇,黄码乡,乡,镇,盐河乡,和平镇,武墩镇,赵集,南陈集,吴城镇,西顺河镇,和平镇,武墩镇,盐河镇,黄码乡",
    "江苏-淮安市-涟水县": "高沟镇,唐集镇,保滩镇,大东镇,五港镇,梁岔镇,石湖镇,朱码镇,岔庙镇,东胡集镇,南集镇,义兴镇,成集镇,红窑镇,陈师镇,前进镇,徐集乡,黄营乡,办事处,乡,村",
    "江苏-淮安市-盱眙县": "马坝镇,官滩镇,旧铺镇,桂五镇,管镇镇,河桥镇,鲍集镇,黄花塘镇,明祖陵镇,铁佛镇,淮河镇,仇集镇,观音寺镇,维桥乡,穆店乡,王店乡,古桑乡,兴隆乡,三河农场,乡,村",
    "江苏-淮安市-金湖县": "金南镇,闵桥镇,塔集镇,银集镇,涂沟镇,前锋镇,吕良镇,陈桥镇,金北镇,戴楼镇,宝应湖农场,复兴圩农场,乡,村",
    "江苏-盐城市-亭湖区": "潘黄镇,南洋镇,龙岗镇,开创路,盐渎路,迎宾大道,希望大道,人民北路,工业区,新兴镇,伍佑镇,便昌镇,中兴镇,职教园区,鞍湖镇,义丰镇,永丰镇,乡,村",
    "江苏-盐城市-盐都区": "大纵湖镇,北龙港镇,楼王镇,学富镇,义丰镇,尚庄镇,葛武镇,北蒋镇,秦南镇,龙冈镇,潘黄镇,郭猛镇,大冈镇,管委会,乡,村",
    "江苏-盐城市-滨海县": "东坎镇,五汛镇,蔡桥镇,正红镇,通榆镇,界牌镇,八巨镇,八滩镇,滨海港镇,滨淮镇,天场乡,大套乡,陈涛乡,振东乡,樊集乡,农场,盐场",
    "江苏-扬州市-广陵区": "杭集镇,湾头镇,城北乡",
    "江苏-扬州市-邗江区": "扬子江南路,发电厂,造纸厂,江海学院,杨庙镇",
    "江苏-扬州市-维扬区": "公道镇,李典镇,运西镇,瓜洲镇,汊河镇,八里镇,施桥镇,沙头镇,头桥镇,红桥镇,新坝镇,甘泉镇,杨寿镇,方巷镇,黄珏镇,大仪镇,槐泗镇",
    "江苏-扬州市-经济开发区": "乡,镇,村",
    "江苏-扬州市-宝应县": "范水镇,夏集镇,柳堡镇,射阳湖镇,广洋湖镇,鲁垛镇,小官庄镇,望直港镇,曹甸镇,西安丰镇,山阳镇,黄塍镇,泾河镇",
    "江苏-扬州市-仪征市": "青山镇,朴席镇,新集镇,刘集镇,陈集镇,大仪镇,谢集乡,月塘乡",
    "江苏-扬州市-高邮市": "界首镇,临泽镇,周巷镇,周山镇,马棚镇,横泾镇,司徒镇,甘剁镇,龙虬镇,三剁镇,卸甲镇,车逻镇,八桥镇,汉留镇,汤庄镇,周庄",
    "江苏-扬州市-江都市": "邵伯镇,真武镇,宜林镇,砖桥镇,双沟镇,丁沟镇,回村,小季,郭村,塘口,丁火,京西,大桥镇,司马镇,苍松镇,二江,华扬",
    "江苏-镇江市-京口区": "谏壁镇,大港新区,镇江新区,沿江公路,镇,乡,村",
    "江苏-镇江市-润州区": "蒋乔镇,乡,村",
    "江苏-镇江市-丹阳市": "司徒镇,延陵镇,珥陵镇,导墅镇,皇塘镇,吕城镇,陵口镇,访仙镇,界牌镇,新桥镇,后巷镇,埤城镇,乡,村",
    "江苏-镇江市-扬中市": "油坊镇,八桥镇,西来桥镇,乡,村",
    "江苏-镇江市-句容市": "华阳镇,黄梅镇,下蜀镇,白兔镇,边城镇,茅山镇,后白镇,郭庄镇,天王镇,宝华镇,乡,村",
    "江苏-泰州市-海陵区": "九龙镇,泰东镇,朱庄,天河镇,永安州镇,罡杨镇,苏陈镇,红旗农场,碧桂园",
    "江苏-泰州市-高港区": "镇,乡,村",
    "江苏-泰州市-兴化市": "镇,乡,村",
    "江苏-泰州市-靖江市": "新桥镇,东兴镇,斜桥镇,西来镇,季市镇,孤山镇,红光镇,生祠镇,马桥镇,乡,村",
    "江苏-泰州市-泰兴市": "镇,乡,村",
    "江苏-泰州市-姜堰市": "镇,乡,村",
    "江苏-宿迁市-宿城区": "洋河镇,双庄镇,来龙镇,大兴镇,三棵树,关庙镇,晓店镇",
    "江苏-宿迁市-宿豫县": "井头镇,蔡集,埠子,宝安,曹集,耿车",
    "江苏-宿迁市-沭阳县": "乡,镇,村",
    "江苏-宿迁市-泗洪县": "上塘镇,魏营镇,临淮镇,半城镇,孙园镇,梅花镇,归仁镇,金锁镇,朱湖镇,界集镇,太平镇,龙集镇,峰山乡,天岗湖乡,车门乡,瑶沟乡,石集乡,城头乡,陈圩乡,曹庙乡,江苏省洪泽湖农场,乡,村",
    "浙江-杭州市-上城区": "",
    "浙江-杭州市-下城区": "",
    "浙江-杭州市-江干区": "万常村,永和村,天万村",
    "浙江-杭州市-拱墅区": "",
    "浙江-杭州市-西湖区": "周浦乡,袁浦镇,龙坞镇,转塘镇",
    "浙江-杭州市-滨江区": "",
    "浙江-杭州市-萧山区": "楼塔镇,河上镇,戴村镇,浦阳镇,进化镇,临浦镇,义桥镇,所前镇,闻堰镇,宁围镇,新街镇,党山镇,益农镇,靖江镇,南阳镇,义蓬镇,河庄镇,党湾镇,新湾镇,村",
    "浙江-杭州市-余杭区": "黄湖镇,径山镇,百丈镇,鸬鸟镇,瓶窑镇,闲林镇,中泰乡,良诸镇,塘硒镇,运河镇,仓前镇,崇贤镇,乡,村",
    "浙江-杭州市-淳安县": "文昌镇,石林镇,临岐镇,威坪镇,姜家镇,梓桐镇,汾口镇,中洲镇,大墅镇,枫树岭镇,里商乡,金峰乡,富文乡,左口乡,屏门乡,瑶山乡,王阜乡,宋村乡,鸠坑乡,浪川乡,界首乡,安阳乡,村",
    "浙江-杭州市-富阳市": "场口镇,常安镇,万市镇,洞桥镇,胥口镇,新登镇,渌渚镇,灵桥镇,常绿镇,龙门镇,里山镇,永昌镇,环山乡,湖源乡,上官乡,渔山乡,春建乡,新桐乡,村",
    "浙江-杭州市-临安市": "乡,镇,村",
    "浙江-宁波市-海曙区": "乡,镇,村",
    "浙江-宁波市-江东区": "五乡,回龙",
    "浙江-宁波市-江北区": "慈城,乍浦",
    "浙江-宁波市-北仑区": "梅山岛,春晓镇,白峰镇,郭巨,大谢岛,镇",
    "浙江-宁波市-镇海区": "蟹浦镇,九龙湖镇,骆驼镇,贵泗镇",
    "浙江-宁波市-鄞州区": "咸祥镇,瞻岐镇,云龙镇,横溪镇,东吴镇,鄞江镇,龙观镇,章村镇,洞桥镇,东钱湖镇,邱隘镇",
    "浙江-宁波市-象山县": "石浦镇,西周镇,鹤浦镇,贤庠镇,墙头镇,定塘镇,涂茨镇,新桥镇,泗洲头镇,东陈乡,晓塘乡,茅洋乡,黄避岙乡,高塘岛乡,村",
    "浙江-宁波市-宁海县": "长街镇,力洋镇,一市镇,前童镇,桑洲镇,黄坛镇,强蛟镇,深甽镇,岔路镇,大佳何镇,胡陈乡,茶院乡,越溪乡,村",
    "浙江-宁波市-余姚市": "四明山镇,马诸镇,河姆渡,历山镇,临山镇,三七市,牟山镇,丈亭镇,大岚镇,洪山乡,大隐镇,黄家埠镇,鹿亭,梁弄镇,乡",
    "浙江-宁波市-慈溪市": "龙山镇,三北镇,范市镇,明壑镇,黄湖监狱,小曹娥,工业区,匡堰镇,桥头镇,观海卫镇,师桥镇,掌起镇,附海镇,新浦镇,杭州湾,崇寿镇,庵东镇,长河镇,乡,村",
    "浙江-宁波市-奉化市": "莼湖镇,裘村镇,大堰镇,松岙镇,乡,村",
    "浙江-温州市-鹿城区": "工业园区,乡",
    "浙江-温州市-龙湾区": "梅头镇,沙城镇,天河镇,乡",
    "浙江-温州市-瓯海区": "仙岩,潘桥,郭溪,瞿溪,仰义,藤桥,泽雅,乡",
    "浙江-嘉兴市-秀城区": "新篁集镇,乡",
    "浙江-嘉兴市-南湖区": "新篁集镇,乡",
    "浙江-嘉兴市-秀洲区": "王江泾镇,新塍镇,洪合镇,乡",
    "浙江-嘉兴市-嘉善县": "陶庄镇,天凝镇,丁栅镇,干窑镇,洪溪镇,大云镇,姚庄镇,杨庙镇,乡,村",
    "浙江-嘉兴市-海盐县": "沈荡镇,百步镇,乡,村",
    "浙江-嘉兴市-海宁市": "周王庙镇,长安镇,开发区,轻纺村,许村镇,盐官镇,乡",
    "浙江-嘉兴市-平湖市": "新埭镇,全塘镇,乡,村",
    "浙江-嘉兴市-桐乡市": "乌镇镇,炉头镇,新生镇,灵安镇,石门镇,河山镇,洲泉镇,大麻镇,高桥镇,南日镇,民合乡,百桃乡,羔羊乡,青石乡,永秀乡,同福乡,留良乡,虎啸乡,芝村乡,骑塘乡,龙翔街道,凤鸣街道,乡,村",
    "浙江-湖州市-吴兴区": "杨家埠,青山,妙西,道场乡,白雀,塘甸,乡,镇",
    "浙江-湖州市-南浔区": "练市镇,双林镇,旧馆镇,菱湖镇,和孚镇,千金镇,石淙镇,善琏镇,双林镇,乡",
    "浙江-湖州市-德清县": "乡,镇,村",
    "浙江-湖州市-长兴县": "乡,镇,村",
    "浙江-湖州市-安吉县": "乡,镇,村",
    "浙江-绍兴市-越城区": "鉴湖镇,东湖镇,东浦镇,灵芝镇,福全镇,离渚镇,杨汛桥镇,马鞍镇,兰亭镇,皋埠镇,工业园,乡",
    "浙江-绍兴市-绍兴县": "乡,镇,村",
    "浙江-绍兴市-新昌县": "乡,镇,村",
    "浙江-绍兴市-上虞市": "汤浦镇,章镇镇,下管镇,永和镇,驿亭镇,沥海镇,长塘镇,盖北镇,岭南乡,陈溪乡,丁宅乡,村",
    "浙江-绍兴市-嵊州市": "乡,镇,村",
    "浙江-金华市-婺城区": "源东乡,澧浦镇,竹马乡,洋埠镇,罗埠镇,汤溪镇,蒋堂镇,塔石乡,沙畈乡,安地村,箸阳乡,岭下镇,雅畈乡,琅琊镇,苏孟乡,长山乡,江东镇,罗店镇,白龙桥镇",
    "浙江-金华市-金东区": "乡,镇,村",
    "浙江-金华市-义乌市": "南陈镇,江湾镇,大陈镇,佛堂镇,苏溪镇,上溪镇,义亭镇,工业区,城西街道,赤岸镇,下骆宅,西城路,宗宅,五洲大道,四海大道,东前王物流区,乡,村",
    "浙江-金华市-永康市": "龙山镇,唐先镇,石柱镇,方岩镇,象珠镇,前仓镇,花街工业区,舟山镇,西溪镇,工业区,乡,村",
    "浙江-衢州市-柯城区": "乡,镇,村西区,工业区,开发区",
    "浙江-衢州市-衢江区": "乡,镇,村西区,工业区,开发区",
    "浙江-衢州市-龙游县": "溪口镇,横山镇,塔石镇,庙下乡,石佛乡,模环乡,罗家乡,社阳乡,大街乡,沐尘畲族乡,村",
    "浙江-台州市-椒江区": "下陈镇,三甲镇,洪家镇,章安镇,前所镇,西山镇,东山镇,黄礁镇,岛,外沙路,码头,机场南路,机场中路,乡",
    "浙江-台州市-黄岩区": "南城街道,院桥镇,澄江镇,江口镇,新前镇,高桥镇,沙埠镇,宁溪镇,头陀镇,茅畲镇,北洋镇,高桥镇,平田镇,富山镇,十里铺,乡",
    "浙江-台州市-路桥区": "峰江镇,新桥镇,横街镇,篷街镇,金清镇,桐屿街道,螺洋街道,黄琅镇,乡",
    "浙江-丽水市-莲都区": "南山园区,工业区,碧湖镇,海口镇,敏河,壶镇,下沙溪,新建镇,太平镇,新碧镇,乡,村",
    "安徽-合肥市-瑶海区": "乡,镇,村,磨店",
    "安徽-合肥市-庐阳区": "乡,镇,村,三十岗,大杨",
    "安徽-合肥市-蜀山区": "乡,镇,村,长江西路",
    "安徽-合肥市-包河区": "乡,镇,村,大圩,东大圩,义城",
    "安徽-合肥市-高新区": "乡,镇,村,大圩,东大圩,义城",
    "安徽-合肥市-中区": "乡,镇,村,大圩,东大圩,义城",
    "安徽-合肥市-肥东县": "乡,镇,村,开发区,",
    "安徽-合肥市-肥西县": "乡,镇,村,开发区",
    "安徽-芜湖市-镜湖区": "",
    "安徽-芜湖市-弋江区": "三山区,白马山,荆山镇,火龙岗,峨桥镇",
    "安徽-芜湖市-鸠江区": "裕溪口,清水镇",
    "安徽-蚌埠市-蚌山区": "乡,镇,村,燕山,仁和集,新机场",
    "安徽-蚌埠市-龙子湖区": "乡,镇,村,长淮卫,李楼,胜利东路",
    "安徽-蚌埠市-禹会区": "乡,镇,村,秦集,黑虎山路",
    "安徽-蚌埠市-五河县": "乡,镇,村",
    "安徽-蚌埠市-固镇县": "乡,镇,村",
    "安徽-马鞍山市-金家庄区": "马钢,看守所,码头,港务原料厂,采石镇,佳山乡,濮塘镇,向山镇,银塘镇,霍里镇,工大,河海大学,工贸学校,职业技术学院,工业集中区,村",
    "安徽-马鞍山市-花山区": "乡,镇,村,开发区,管理区,工业园",
    "安徽-马鞍山市-雨山区": "向山镇,银塘镇,霍里镇,濮塘镇,佳山乡,卜唐镇,采石镇,乡,村",
    "安徽-马鞍山市-当涂县": "乡,镇,村",
    "安徽-淮北市-杜集区": "乡,镇,村,矿区",
    "安徽-淮北市-相山区": "乡,镇,村,刘桥,百善矿,矿区",
    "安徽-铜陵市-铜官山区": "乡,镇,村,车辆厂,矿业公司,凤矿",
    "安徽-铜陵市-狮子山区": "乡,镇,村",
    "安徽-铜陵市-郊区": "乡,镇,村,隆门路,治炼厂,有色机厂,扫把沟,磷铵厂,殡仪馆,六国化工,石门路,金隆",
    "安徽-铜陵市-铜陵县": "乡,镇,村",
    "安徽-安庆市-迎江区": "",
    "安徽-安庆市-大观区": "乡,镇,龙山校区,矛青路,工业园,集贤北路,华中东路,风景区",
    "安徽-安庆市-宜秀区": "乡,镇,龙山校区,矛青路,工业园,集贤北路,华中东路,风景区",
    "安徽-安庆市-桐城市": "乡,镇,村",
    "安徽-黄山市-屯溪区": "乡,镇,村,簧墩镇,百鸟亭,上草市,下草市",
    "安徽-滁州市-琅琊区": "乡,镇,村,环山路,蓄能电站,凤阳南路,花园路,湖心路",
    "安徽-滁州市-定远县": "乡,镇,村",
    "安徽-滁州市-天长市": "乡,镇,村",
    "安徽-阜阳市-颍州区": "乡,镇,村,办事处",
    "安徽-阜阳市-颍东区": "乡,镇,村,猛牛大道,开发区",
    "安徽-阜阳市-颍泉区": "乡,镇,村,办事处,华润电力公司",
    "安徽-阜阳市-临泉县": "乡,镇,村",
    "安徽-阜阳市-太和县": "乡,镇,村",
    "安徽-阜阳市-界首市": "乡,镇,村",
    "安徽-宿州市-埇桥区": "乡,镇,村",
    "安徽-宿州市-砀山县": "乡,镇,村",
    "安徽-宿州市-泗县": "乡,镇,村",
    "安徽-巢湖市-居巢区": "水泥厂,城东小学,污水处理厂,灯塔新村,工业圆,铸造厂,乡,镇,村",
    "安徽-六安市-金安区": "乡,村,城南镇,城北镇,独山镇,叶集镇",
    "安徽-六安市-裕安区": "乡,镇,村,叶集,职业学院,望城街道",
    "安徽-六安市-霍邱县": "乡,镇,村",
    "安徽-六安市-舒城县": "乡,镇,村",
    "安徽-六安市-霍山县": "乡,镇,村",
    "安徽-亳州市-谯城区": "十九里镇,十八里镇,十河镇,双沟镇,淝河镇,大杨镇,城父镇,五马镇,颜集镇,张店乡,华佗镇,观堂镇,古井镇,古城镇,沙土镇,位岗镇,牛集镇,龙杨镇,芦庙镇,立徳镇,谯东镇,开发区,赵桥乡,工业园区,车管所,端福祥,外环路",
    "安徽-亳州市-蒙城县": "乡,镇,村",
    "安徽-池州市-贵池区": "乡,镇,村,风景区",
    "安徽-宣城市-宣州区": "乡,镇,村,工业区",
    "福建-福州市-鼓楼区": "",
    "福建-福州市-台江区": "",
    "福建-福州市-仓山区": "螺洲镇,红星农场,城门镇",
    "福建-福州市-马尾区": "亭江镇,红山,东岐,琅岐",
    "福建-福州市-晋安区": "竹屿村,汤写村,杨坂,华侨农场,登云水库,潭下,蟮溪农场,山重,亭下,炮山,过溪路,上浦岭,下浦岭,安亭下,西边,市煤气厂,登云山庄,园中,潭桥",
    "福建-福州市-闽侯县": "甘蔗街道,白沙镇,南屿镇,尚干镇,祥谦镇,青口镇,南通镇,上街镇,荆溪镇,竹岐乡,鸿尾乡,洋里乡,大湖乡,廷坪乡,小箬乡,江洋农场,村",
    "福建-福州市-连江县": "东岱镇,琯头镇,晓澳镇,东湖镇,丹阳镇,长龙镇,透堡镇,马鼻镇,官坂镇,筱埕镇,黄岐镇,苔菉镇,浦口镇,坑园镇,潘度乡,江南乡,蓼沿乡,安凯乡,下宫乡,畲族乡,马祖乡,村",
    "福建-福州市-罗源县": "松山镇,起步镇,中房镇,飞竹镇,鉴江镇,白塔乡,洪洋乡,西兰乡,畲族乡,碧里乡,村",
    "福建-福州市-闽清县": "坂东镇,池园镇,梅溪镇,白樟镇,白中镇,塔庄镇,东桥镇,雄江镇,金沙镇,省璜镇,云龙乡,上莲乡,三溪乡,下祝乡,桔林乡,村",
    "福建-福州市-平潭县": "苏澳镇,流水镇,澳前镇,北厝镇,平原镇,敖东镇,白青乡,屿头乡,大练乡,芦洋乡,中楼乡,东庠乡,岚城乡,南海乡,村",
    "福建-福州市-福清市": "东南村,安民村,龙田镇,江镜镇,港头镇,沙埔镇,阳下镇,海口镇,城头镇,南岭镇,三山镇,高山镇,东翰镇,镜洋镇,渔溪镇,江阴镇,新厝镇,东张镇,官口,一都镇,乡,村",
    "福建-福州市-长乐市": "首占镇,玉田镇,松下镇,江田镇,古槐镇,文武砂镇,鹤上镇,湖南镇,文岭镇,梅花镇,潭头镇,罗联乡,猴屿乡,乡,村",
    "福建-厦门市-思明区": "中山路,大元路,南东巷,虞朝巷,黄厝,鼓浪屿",
    "福建-厦门市-海沧区": "东孚镇,后井,锦里,囷瑶,青礁,古楼,角嵩路,动物园,马青路,建港路,工业区,南海三路",
    "福建-厦门市-湖里区": "殿前,寨上,高崎中埔,五通",
    "福建-厦门市-集美区": "后溪镇,灌口镇,兴才学院,华侨大学,武汉理工,孙坂北路,同集南路,集美大道,孙坂南路",
    "福建-厦门市-同安区": "莲河镇,竹坝镇,汀溪镇,五显镇,莲花镇,庙山村,磨基石,云洋村,澳溪村,竹山村",
    "福建-厦门市-翔安区": "新圩镇,新店镇,内厝镇,大嶝岛,霞浯,珩厝,霄垄,东园,蔡厝,后村,前浯,欧厝,澳头,彭厝,西滨,东界,下后滨,下许,蔡埔村",
    "福建-莆田市-城厢区": "常太镇,华亭镇,工业区,乡",
    "福建-莆田市-涵江区": "大洋乡,新县镇,白沙镇,秋芦镇,庄边镇,梧塘镇,大洋乡,乡",
    "福建-莆田市-荔城区": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "福建-莆田市-秀屿区": "忠门镇,平海镇,东庄镇,平海镇,南日镇,湄洲镇,月塘乡,山亭乡,乡,工业区",
    "福建-泉州市-鲤城区": "",
    "福建-泉州市-丰泽区": "乡,镇,开发区,管理区,郊区,科技园,技术园区,工业园",
    "福建-泉州市-洛江区": "双阳街道,罗溪镇,马甲镇,河市镇,虹山乡,仰恩大学",
    "福建-泉州市-泉港区": "南埔镇,界山镇,后龙镇,蜂尾镇,前黄镇,涂岭镇,盐场",
    "福建-泉州市-惠安县": "螺阳镇,黄塘镇,紫山镇,洛阳镇,东园镇,张坂镇,崇武镇,山霞镇,涂寨镇,东岭镇,东桥镇,净峰镇,小岝镇,辋川镇,回族乡,村",
    "福建-泉州市-安溪县": "蓬莱镇,湖头镇,官桥镇,剑斗镇,金谷镇,龙门镇,虎邱镇,芦田镇,感德镇,魁斗镇,西坪镇,参内乡,白濑乡,湖上乡,尚卿乡,大坪乡,龙涓乡,长坑乡,兰田乡,祥华乡,桃舟乡,福田乡,村",
    "福建-泉州市-永春县": "一都镇,下洋镇,蓬壶镇,达埔镇,吾峰镇,石鼓镇,岵山镇,东平镇,湖洋镇,坑仔口镇,玉斗镇,锦斗镇,东关镇,桂洋镇,苏坑镇,仙夹镇,横口乡,呈祥乡,介福乡,外山乡,村",
    "福建-泉州市-德化县": "龙浔镇,三班镇,龙门滩镇,雷峰镇,南埕镇,水口镇,赤水镇,上涌镇,葛坑镇,杨梅乡,汤头乡,桂阳乡,盖德乡,国宝乡,美湖乡,大铭乡,春美乡,村",
    "福建-泉州市-石狮市": "乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "福建-泉州市-晋江市": "西园街道,罗山街道,新塘街道,磁灶镇,东石镇,深沪镇,金井镇,内坑镇,龙湖镇,永和镇,英林镇,紫帽镇,西滨镇,乡,村",
    "福建-泉州市-南安市": "官桥镇,省新镇,仑仓镇,东田镇,英都镇,翔云镇,金陶镇,诗山镇,蓬华镇,码头镇,九都镇,乐峰镇,罗东镇,梅山镇,洪濑镇,洪梅镇,康美镇,丰州镇,霞美镇,水头镇,石井镇,眉山乡,向阳乡,大霞美,乡,村",
    "福建-漳州市-芗城区": "服务区,石亭镇,浦南镇,天宝镇,开发区",
    "福建-漳州市-龙文区": "服务区,郭坑镇,江头,云洞岩,开发区",
    "福建-漳州市-长泰县": "坂里乡,工业区,农场,枋洋镇,岩溪镇,陈巷镇,乡,村",
    "福建-南平市-延平区": "黄墩街道,来舟镇,樟湖镇,夏道镇,西芹镇,峡阳镇,大横镇,王台镇,太平镇,南山镇,塔前镇,茫荡镇,洋后镇,炉下镇,巨口乡,赤门乡",
    "福建-南平市-顺昌县": "西镇,洋口镇,水南镇,埔上镇,元坑镇,大历镇,大干镇,仁寿镇,洋墩乡,郑坊乡,际会乡,岚下乡,高阳乡,村",
    "福建-南平市-邵武市": "拿口镇,和平镇,水北镇,大埠岗镇,沿山镇,洪墩镇,城郊镇,下沙镇,卫闽镇,肖家坊镇,大竹镇,吴家塘镇,张厝乡,桂林乡,金坑乡,村",
    "福建-南平市-武夷山市": "兴田镇,五夫镇,上梅乡,吴屯乡,岚谷乡,洋庄乡,村",
    "福建-南平市-建瓯市": "玉山,小桥,南雅,东峰,东游,小松,吉阳,房道,徐墩,迪口,川石,龙村,水源,顺阳,乡,村",
    "福建-南平市-建阳市": "水吉,麻沙,莒口,黄坑,小湖,将口,徐市,漳墩,书坊,回龙,崇雒,乡,村",
    "福建-龙岩市-新罗区": "红炭山,龙门镇,万安镇,白沙镇,大池镇,小池镇,雁石镇,红坊镇,适中镇,龙门镇,东肖镇,铁山镇,曹溪镇,东宫下",
    "福建-龙岩市-长汀县": "同镇,古城镇,新桥镇,馆前镇,童坊镇,河田镇,南山镇,濯田镇,四都镇,涂坊镇,策武乡,铁长乡,庵杰乡,三洲乡,宣成乡,红山乡,羊牯乡,村",
    "福建-龙岩市-永定县": "坎市镇,下洋镇,湖雷镇,高陂镇,抚市镇,湖坑镇,培丰镇,龙潭镇,峰市镇,城郊乡,西溪乡,金砂乡,仙师乡,洪山乡,湖山乡,岐岭乡,古竹乡,堂保乡,合溪乡,虎岗乡,大溪乡,陈东乡,高头乡,村",
    "福建-龙岩市-上杭县": "临城镇,兰溪镇,古田镇,南阳镇,才溪镇,中都镇,稔田镇,白砂镇,湖洋乡,旧县乡,通贤乡,茶地乡,泮境乡,下都乡,太拔乡,溪口乡,蛟洋乡,步云乡,珊瑚乡,畲族乡,村",
    "福建-龙岩市-武平县": "中山镇,岩前镇,十方镇,中堡镇,桃溪镇,城厢乡,万安乡,东留乡,民主乡,下坝乡,中赤乡,象洞乡,武东乡,永平乡,湘店乡,大禾乡,村",
    "福建-龙岩市-连城县": "北团镇,姑田镇,朋口镇,莒溪镇,新泉镇,庙前镇,揭乐乡,塘前乡,隔川乡,四堡乡,罗坊乡,林坊乡,文亨乡,曲溪乡,赖源乡,宣和乡,村",
    "福建-龙岩市-漳平市": "新桥镇,双洋镇,永福镇,溪南镇,和平镇,拱桥镇,象湖镇,赤水镇,芦芝乡,西元乡,南洋乡,官田乡,吾祠乡,灵地乡,村",
    "福建-宁德市-蕉城区": "工业区,漳湾镇,七都镇,八都镇,九都镇,霍童镇,赤溪镇,洋中镇,飞鸾镇,三都镇,畲族乡,洪口乡,石后乡,虎贝乡",
    "福建-宁德市-霞浦县": "长春镇,牙城镇,溪南镇,沙江镇,下浒镇,三沙镇,盐田畲族乡,水门畲族乡,崇儒畲族乡,柏洋乡,北壁乡,海岛乡,村",
    "福建-宁德市-古田县": "平湖镇,大桥镇,黄田镇,鹤塘镇,杉洋镇,凤都镇,水口镇,吉巷乡,泮洋乡,凤埔乡,卓洋乡,大甲乡,村",
    "福建-宁德市-屏南县": "屏城乡,长桥镇,路下乡,代溪镇,熙岭乡,甘棠乡,双溪镇 ,岭下乡 ,棠口乡,寿山乡,村",
    "福建-宁德市-寿宁县": "斜滩镇,南阳镇,武曲镇,大安乡,坑底乡,清源乡,竹管垄乡,犀溪乡,平溪乡,芹洋乡,托溪乡,凤阳乡,下党乡,村",
    "福建-宁德市-周宁县": "咸村镇,西街,七步,玛坑,泗桥,狮城,礼门,纯池,浦源,乡,村",
    "福建-宁德市-柘荣县": "富溪镇,城郊乡,东源乡,黄柏乡,宅中乡,楮坪乡,英山乡,村",
    "福建-宁德市-福安市": "赛岐镇,穆阳镇,甘棠镇,下白石镇,溪柄镇,上白石镇,社口镇,潭头镇,晓阳镇,溪尾镇,溪潭镇,城阳乡,范坑乡,湾坞乡,松罗乡,畲族乡,村",
    "福建-宁德市-福鼎市": "前岐,贯岭,管阳,沙埕,佳阳,点头,白琳,磻溪,叠石,秦屿,店下,龙安,硖门,嵛山,核电站,乡,村",
    "江西-南昌市-东湖区": "乡,镇,村",
    "江西-南昌市-西湖区": "乡,镇,村",
    "江西-南昌市-青云谱区": "及楞上村,向塘镇,迎宾南大道,佛塔路",
    "江西-南昌市-青山湖区": "乡,镇,村,南钢,氨厂,罗家集",
    "江西-南昌市-南昌县": "乡,镇,村",
    "江西-南昌市-新建县": "乡,镇,村",
    "江西-景德镇市-昌江区": "乡,镇,村,鲶鱼山,鱼山镇,740厂,煤气厂",
    "江西-景德镇市-珠山区": "乡,镇,村,陶瓷学院",
    "江西-景德镇市-浮梁县": "乡,镇,村",
    "江西-景德镇市-乐平市": "乡,镇,村",
    "江西-萍乡市-安源区": "乡,镇,村",
    "江西-九江市-庐山区": "乡,镇,村,莲花镇,江氧厂,化纤厂,九湖路,九星路,前进东路",
    "江西-九江市-浔阳区": "乡,镇,村",
    "江西-九江市-九江县": "乡,镇,村",
    "江西-九江市-武宁县": "乡,镇,村",
    "江西-九江市-修水县": "乡,镇,村",
    "江西-九江市-永修县": "乡,镇,村",
    "江西-九江市-德安县": "乡,镇,村",
    "江西-九江市-星子县": "乡,镇,村",
    "江西-九江市-都昌县": "乡,镇,村",
    "江西-新余市-渝水区": "乡,镇,村",
    "江西-新余市-分宜县": "乡,镇,村",
    "江西-鹰潭市-月湖区": "乡,镇,村",
    "江西-鹰潭市-余江县": "乡,镇,村",
    "江西-赣州市-章贡区": "乡,镇,村",
    "江西-吉安市-吉州区": "乡,镇,村,十二中,长塘镇,樟山,吉福路四公桩,五公桩,六公桩,七公桩,造纸厂",
    "江西-吉安市-青原区": "乡,镇,村,青原山,天玉镇,华能电厂",
    "江西-吉安市-吉水县": "乡,镇,村",
    "江西-吉安市-泰和县": "乡,镇,村",
    "江西-宜春市-袁州区": "乡,村,慈化镇,天台镇,三阳镇,楠木乡,新坊镇,洪汤镇,温汤镇,金瑞镇,彬江镇,洪江镇,湖田乡,丰顶山乡,辽市镇",
    "江西-宜春市-万载县": "乡,镇,村",
    "江西-宜春市-上高县": "乡,镇,村",
    "江西-宜春市-宜丰县": "乡,镇,村",
    "江西-宜春市-丰城市": "乡,镇,村,孙渡街道,尚庄街道",
    "江西-宜春市-樟树市": "乡,镇,村",
    "江西-宜春市-高安市": "乡,镇,村",
    "江西-抚州市-临川区": "乡,镇,村",
    "江西-抚州市-南城县": "乡,镇,村",
    "江西-抚州市-黎川县": "乡,镇,村",
    "江西-抚州市-南丰县": "乡,镇,村",
    "江西-抚州市-崇仁县": "乡,镇,村",
    "江西-抚州市-金溪县": "乡,镇,村",
    "江西-上饶市-信州区": "乡,镇,村,丁家洲,车头区,罗桥区",
    "江西-上饶市-上饶县": "乡,镇,村",
    "江西-上饶市-广丰县": "乡,镇,村",
    "江西-上饶市-玉山县": "乡,镇,村",
    "江西-上饶市-铅山县": "乡,镇,村",
    "江西-上饶市-横峰县": "乡,镇,村",
    "江西-上饶市-弋阳县": "乡,镇,村",
    "江西-上饶市-鄱阳县": "乡,镇,村",
    "江西-上饶市-婺源县": "乡,镇,村",
    "江西-上饶市-德兴市": "乡,镇,村",
    "山东-济南市-历下区": "",
    "山东-济南市-市中区": "党家庄镇,十六里河镇,大涧沟,二环南路,力明眼科学院,柳阜镇,仲宫镇,西营镇",
    "山东-济南市-槐荫区": "段店镇,吴家堡镇",
    "山东-济南市-天桥区": "大桥镇,西沙路,赵庄,太平庄路,桑梓店镇",
    "山东-济南市-历城区": "仲宫镇,港沟镇,柳埠镇,孙村镇,郭店镇,董家镇,唐王镇,遥墙镇,王舍人镇,华山镇,西营镇,彩石镇,乡",
    "山东-济南市-长清区": "归德镇,孝里镇,万德镇,张夏镇,马山镇,双泉乡,武家庄乡,",
    "山东-济南市-平阴县": "东阿镇,孝直镇,孔村镇,洪范池镇,玫瑰镇,安城乡,村",
    "山东-济南市-济阳县": "回河镇,垛石镇,孙耿镇,曲堤镇,仁风镇,崔寨镇,二太平镇,新市镇,乡,村",
    "山东-济南市-商河县": "玉皇庙街道,龙桑寺镇,殷巷镇,怀仁镇,郑路镇,贾庄镇,孙集乡,沙河乡,韩庙乡,张坊乡,白桥乡,村",
    "山东-济南市-章丘市": "双山街道,枣园街道,龙山街道,埠村街道,圣井街道,普集镇,绣惠镇,相公庄镇,垛庄镇,水寨镇,文祖镇,刁镇,曹范镇,白云湖镇,高官寨镇,宁家埠镇,官庄乡,辛寨乡,黄河乡,村",
    "山东-青岛市-市南区": "",
    "山东-青岛市-市北区": "",
    "山东-青岛市-四方区": "",
    "山东-青岛市-黄岛区": "乡,镇,村",
    "山东-青岛市-崂山区": "沙子口,王哥庄,崂山路,石老人,北寨,香港东路,九水东路,乡,镇",
    "山东-青岛市-李沧区": "九水东路",
    "山东-青岛市-城阳区": "红岛,河套,东宅子头,西宅子头,冷家沙沟,李家沙沟",
    "山东-青岛市-开发区": "乡,镇,村",
    "山东-青岛市-胶州市": "胶莱镇,马店镇,营海镇,铺集镇,张应镇,里岔镇,胶西镇,洋河镇,九龙镇,杜村镇,胶北镇,乡,村",
    "山东-青岛市-即墨市": "城马路,大信镇,南泉镇,上马,蓝村,温泉镇,田横镇,店集镇,官庄镇,华山镇,普东镇,龙泉镇,鳌山卫镇,段泊岚镇,移风镇,七级镇,太祉镇,瓦戈庄,刘家庄,金口镇,丰城镇,王村镇,乡,村",
    "山东-青岛市-平度市": "同和工业,胜达路,同和路,崔候路,同康路,香店工业园,乡,镇,村",
    "山东-青岛市-胶南市": "琅琊镇,泊里镇,大场镇,大村镇,六汪镇,王台镇,张家楼镇,海青镇,宝山镇,藏南镇,理务关镇,乡,村",
    "山东-青岛市-莱西市": "龙水街道,望城街道,沽河街道,孙受镇,姜山镇,夏格庄镇,院上镇,日庄镇,南墅镇,河头店镇,店埠镇,李权庄镇,武备镇,马连庄镇,乡,村",
    "山东-淄博市-淄川区": "岭子镇,磁村镇,龙泉镇,西河镇,太和乡,莪庄镇,昆仑镇,东坪乡,淄河镇,张庄乡,黑旺镇,杨寨镇,双沟镇,罗村镇,寨里镇,商家镇,城南镇",
    "山东-淄博市-张店区": "朱家庄,刘斜村,马店村,丁庄村,韩庙村,阎高村,辛曹村,北石桥村,中埠镇,马尚镇,湖田镇,沣水镇,南定镇,房镇,卫固镇,傅家镇",
    "山东-淄博市-博山区": "域城镇,白塔镇,夏家庄镇,山头镇,八陡镇,崮山镇,石马镇,北博山镇,南博山镇,源泉镇,池上镇,乡",
    "山东-淄博市-临淄区": "凤凰镇,齐都镇,皇城镇,南王镇,边河乡,齐陵街办",
    "山东-淄博市-周村区": "城北路街办,萌水镇,王村镇,南郊镇,北郊镇,临池镇",
    "山东-淄博市-桓台县": "荆家镇,马桥镇,周家镇,唐山镇,果里镇,侯庄镇,桓台新区,乡,村",
    "山东-淄博市-高青县": "青城镇,高城镇,黑里寨镇,唐坊镇,常家镇,花沟镇,赵店镇,木李镇,乡,村",
    "山东-淄博市-沂源县": "土门镇,徐家庄乡,大张庄镇,鲁村镇,西里镇,中庄乡,东里镇,石桥乡,悦庄镇,张家坡镇,乡,村",
    "山东-枣庄市-市中区": "税郭镇,孟庄镇,齐村镇,永安乡,西王庄乡",
    "山东-枣庄市-薛城区": "沙沟镇,周营镇,邹坞镇,陶庄镇,常庄镇,张范镇,乡",
    "山东-枣庄市-峄城区": "古邵镇,阴平镇,底阁镇,榴园镇,峨山镇,乡",
    "山东-枣庄市-山亭区": "店子镇,西集镇,桑村镇,北庄镇,城头镇,徐庄镇,水泉镇,冯卯镇,凫城乡",
    "山东-枣庄市-滕州市": "东沙河镇,洪绪镇,南沙河镇,大坞镇 ,滨湖镇,级索镇,西岗镇,姜屯镇,鲍沟镇,张汪镇,官桥镇,柴胡店镇,羊庄镇,木石镇,界河镇,龙阳镇,东郭镇,乡,村",
    "山东-东营市-东营区": "乡,镇,石化总厂,稠油厂,胜花小区,德州路,潍坊路,水泥厂,高速管理处,西五路,工业园,东六路,东七路,湖州路,东八路,飞机场,北二路,广利港,莱州湾,东安镇",
    "山东-东营市-河口区": "义和镇,仙河镇,孤岛镇,新户乡,太平乡,六合乡",
    "山东-东营市-垦利县": "胜坨镇,郝家镇,永安镇,黄河口镇,西宋乡,董集乡,村",
    "山东-东营市-广饶县": "大王镇,稻庄镇,石村镇,丁庄镇,李鹊镇,大码头乡,西刘桥乡,花官乡,陈官乡,村",
    "山东-烟台市-芝罘区": "",
    "山东-烟台市-福山区": "高疃镇,张格庄镇,回里镇,门楼镇,东厅镇,东里,南里,北里,中里,工业园,乡",
    "山东-烟台市-牟平区": "文化街道,养马岛街道,观水镇,武宁镇,大窑镇,姜格庄镇,龙泉镇,玉林店镇,水道镇,莒格庄镇,高陵镇,王格庄镇,乡",
    "山东-烟台市-莱山区": "莱山镇,解甲庄镇,观水外镇,金山镇,院格庄镇,乡",
    "山东-烟台市-龙口市": "乡,镇,村",
    "山东-烟台市-莱阳市": "沐浴店镇,团旺镇,穴坊镇,羊郡镇,姜疃镇,万第镇,照旺庄镇,谭格庄镇,柏林庄镇,河洛镇,吕格庄镇,高格庄镇,大夼镇,山前店镇,乡",
    "山东-烟台市-莱州市": "永安路街道,三山岛街道,城港路街道,文峰路街道,沙河镇,朱桥镇,郭家店镇,金城镇,平里店镇,驿道镇,程郭镇,虎头崖镇,柞村镇,夏邱镇,土山镇,乡,村",
    "山东-烟台市-蓬莱市": "紫荆山街道,新港街道,蓬莱阁街道,南王街道,刘家沟镇,潮水镇,大柳行镇,小门家镇,大辛店镇,村里集镇,北沟镇,乡,村",
    "山东-烟台市-招远市": "泉山街道,梦芝街道,温泉街道,辛庄镇,蚕庄镇,金岭镇,毕郭镇,玲珑镇,张星镇,大秦家镇,夏甸镇,阜山镇,齐山镇,乡,村",
    "山东-烟台市-海阳市": "方圆街道,凤城街道,留格店镇,盘石店镇,郭城镇,徐家店镇,发城镇,小纪镇,行村镇,辛安镇,二十里店镇,大闫家镇,朱吴镇,乡,村",
    "山东-潍坊市-潍城区": "科技学院,医学院,于河镇,符山镇,望留镇,军埠口镇,大柳树镇,杏埠镇,开发区",
    "山东-潍坊市-寒亭区": "开元街办,潍北,开发区,大家洼",
    "山东-潍坊市-坊子区": "乡,黄旗堡镇,赵戈镇,太保庄镇",
    "山东-潍坊市-奎文区": "乡,镇,村",
    "山东-潍坊市-临朐县": "乡,村,东城街道,五井镇,冶源镇,寺头镇,九山镇,辛寨镇,沂山镇,柳山镇,上林镇",
    "山东-潍坊市-昌乐县": "乡,村,五图街道,乔官镇,鄌郚镇,红河镇,营邱镇",
    "山东-潍坊市-青州市": "乡,村,弥河镇,王坟镇,庙子镇,邵庄镇,高柳镇,何官镇,东夏镇,谭坊镇,黄楼镇",
    "山东-潍坊市-诸城市": "乡,村,龙都街道,舜王街道,贾悦镇,石桥子镇,林家村镇,桃林乡",
    "山东-潍坊市-寿光市": "乡,村,化龙镇,营里镇,台头镇,田柳镇,上口镇,侯镇,纪台镇,稻田镇,羊口镇",
    "山东-潍坊市-安丘市": "乡,村,景芝镇,黄旗堡镇,凌河镇,官庄镇,大盛镇,赵戈镇,石埠子镇,石堆镇,柘山镇,辉渠镇,吾山镇,金冢子镇",
    "山东-潍坊市-高密市": "乡,村,柏城镇,夏庄镇,姜庄镇,大牟家镇,阚家镇,井沟镇,柴沟镇",
    "山东-济宁市-市中区": "乡,镇,许庄街办",
    "山东-济宁市-任城区": "乡,镇,村",
    "山东-济宁市-微山县": "村,韩庄镇,欢城镇,南阳镇,鲁桥镇,傅村镇,留庄镇,微山岛乡,两城乡,马坡乡,高楼乡,张楼乡,赵庙乡,西平乡",
    "山东-济宁市-鱼台县": "村,清河镇,鱼城镇,王鲁镇,张黄镇,王庙镇,李阁镇,唐马乡,老砦乡,罗屯乡",
    "山东-济宁市-金乡县": "村,羊山镇,胡集镇,肖云镇,鸡黍镇,王丕镇,司马镇,鱼山镇,马庙镇,化雨乡,卜集乡,高河乡,兴隆乡",
    "山东-济宁市-嘉祥县": "村,纸坊镇,梁宝寺镇,卧龙山镇,疃里镇,马村镇,金屯镇,大张楼镇,老僧堂乡,黄垓乡,万张乡,马集乡,满硐乡,仲山乡,孟姑集乡",
    "山东-济宁市-汶上县": "村,南站镇,南旺镇,次丘镇,寅寺镇,郭楼镇,康驿镇,苑庄镇,义桥乡,刘楼乡,郭仓乡,杨店乡,军屯乡,白石乡",
    "山东-济宁市-泗水县": "村,泉林镇,星村镇,柘沟镇,金庄镇,苗馆镇,中册镇,杨柳镇,泗张镇,圣水峪乡,大黄沟乡,高峪乡",
    "山东-济宁市-梁山县": "村,小路口镇,韩岗镇,徐集镇,拳铺镇,杨营镇,韩垓镇,馆驿镇,小安山镇,马营乡,寿张集乡,黑虎庙乡,赵固堆乡,大路口乡",
    "山东-济宁市-曲阜市": "乡,村,书院街道,吴村镇,姚村镇,陵城镇,小雪镇,南辛镇,时庄镇,王庄乡,董庄乡,息陬乡,防山乡",
    "山东-济宁市-兖州市": "乡,村,大安镇,新驿镇,颜店镇,王因镇,新兖镇,谷村镇,漕河镇,黄屯镇,兴隆庄镇,小孟镇",
    "山东-济宁市-邹城市": "乡,村,千泉街道,凫山街道,香城镇,城前镇,大束镇,北宿镇,中心店镇,唐村镇,太平镇,平阳寺镇,石墙镇,峄山镇,看庄镇,张庄镇,田黄镇,郭里镇",
    "山东-泰安市-泰山区": "乡,镇,村",
    "山东-泰安市-岱岳区": "乡,镇,村",
    "山东-泰安市-宁阳县": "村,泗店镇,东疏镇,伏山镇,罡城镇,蒋集镇,磁窑镇,华丰镇,葛石镇,鹤山乡,东庄乡,乡饮乡",
    "山东-泰安市-东平县": "村,老湖镇,斑鸠店镇,银山镇,州城镇,沙河站镇,彭集镇,接山乡,大羊乡,梯门乡,新湖乡,商老庄乡,戴庙乡,旧县乡",
    "山东-泰安市-新泰市": "乡,村,东都镇,小协镇,翟镇,泉沟镇,羊流镇,果都镇,西张庄镇,天宝镇,楼德镇,禹村镇,宫里镇,谷里镇,石莱镇,放城镇,刘杜镇,汶南镇,龙廷镇,岳家庄乡",
    "山东-泰安市-肥城市": "乡,村,老城镇,潮泉镇,王瓜店镇,桃园镇,王庄镇,湖屯镇,石横镇,安临站镇,孙伯镇,安驾庄镇,边院镇,汶阳镇,仪阳乡",
    "山东-威海市-环翠区": "乡,镇,连林岛路,李家夼,黄泥沟,环海路,工业园,疗养院,威海宾馆,蓝天宾馆,度假区,刘公岛,孙家疃镇,远遥镇,桥头镇,草庙子镇,泊于镇,固山镇,羊亭镇,初村镇,温泉镇,姜家寨",
    "山东-威海市-文登市": "乡,村,文登营镇,大水泊镇,张家产镇,高村镇,泽库镇,侯家镇,宋村镇,泽头镇,小观镇,葛家镇,米山镇,界石镇,汪疃镇,苘山镇",
    "山东-威海市-荣成市": "乡,村,俚岛镇,成山镇,埠柳镇,港西镇,夏庄镇,崖西镇,荫子镇,滕家镇,大疃镇,上庄镇,虎山镇,人和镇",
    "山东-威海市-乳山市": "乡,村,夏村镇,乳山口镇,海阳所镇,白沙滩镇,大孤山镇,南黄镇,冯家镇,下初镇,午极镇,育黎镇,崖子镇,诸往镇,乳山寨镇,徐家镇",
    "山东-日照市-东港区": "乡,镇,日照钢厂,沿海路600号,安东卫街道,度假区,北京路399号,日照电厂,奎山街道,日照街道,秦楼街道",
    "山东-日照市-五莲县": "乡,村,街头镇,潮河镇,许孟镇,于里镇,汪湖镇,叩官镇,中至镇,高泽镇,石场乡,户部乡,松柏乡",
    "山东-莱芜市-莱城区": "乡,茶业口镇,羊里镇,方下镇,牛泉镇,苗山镇,雪野镇,大王庄镇,寨里镇,杨庄镇,茶叶口镇,和庄乡",
    "山东-莱芜市-钢城区": "乡,颜庄镇,黄庄镇,里辛镇,辛庄镇",
    "山东-临沂市-兰山区": "乡,镇,工业园,大岭镇,南坊镇,马厂湖镇,义堂镇,金七路",
    "山东-临沂市-罗庄区": "乡,镇,工业园,西高都,东高都,付庄,在庄,盛庄,沈泉庄,汤庄",
    "山东-临沂市-河东区": "乡,镇,工业园,汤头镇,太平镇,刘店子乡,郑旺镇,八湖镇,凤凰岭乡,重沟镇",
    "山东-临沂市-郯城县": "村,马头镇,重坊镇,李庄镇,禇墩镇,杨集镇,黄山镇,港上镇,高峰头镇,庙山镇,沙墩镇,胜利乡,新村乡,花园乡,归昌乡,红花乡,泉源乡",
    "山东-临沂市-沂水县": "村,马站镇,高桥镇,许家湖镇,黄山铺镇,姚店子镇,诸葛镇,崔家峪镇,四十里堡镇,杨庄镇,夏蔚镇,沙沟镇,高庄镇,道托乡,圈里乡,龙家圈乡,泉庄乡,富官庄乡,院东头乡",
    "山东-临沂市-苍山县": "村,大仲村镇,兰陵镇,长城镇,磨山镇,神山镇,车辋镇,尚岩镇,向城镇,新兴镇,南桥镇,层山镇,庄坞镇,沂堂镇,贾庄乡,矿坑乡,下村乡,鲁城乡,三合乡,兴明乡,二庙乡",
    "山东-临沂市-平邑县": "村,仲村镇,武台镇,保太镇,柏林镇,卞桥镇,地方镇,铜石镇,温水镇,流峪镇,郑城镇,白彦镇,临涧镇,丰阳镇,资邱乡,魏庄乡",
    "山东-临沂市-莒南县": "村,团林镇,大店镇,坊前镇,坪上镇,相邸镇,板泉镇,洙边镇,文疃镇,壮岗镇,汀水镇,石莲子镇,岭泉镇,筵宾镇,涝坡镇,朱芦镇,道口乡,相沟乡",
    "山东-临沂市-蒙阴县": "村,常路镇,岱崮镇,坦埠镇,垛庄镇,高都镇,野店镇,桃墟镇,界牌镇,联城乡,旧寨乡",
    "山东-临沂市-临沭县": "村,蛟龙镇,大兴镇,石门镇,曹庄镇,南古镇,郑山镇,白旄镇,青云镇,玉山镇,店头镇,朱仓乡",
    "山东-德州市-德城区": "乡,镇,村",
    "山东-德州市-开发区": "乡,镇,村",
    "山东-德州市-禹城市": "村,伦镇,房寺镇,张庄镇,辛店镇,安仁镇,辛寨镇,粱家镇,李屯乡,十里望回族乡,莒镇乡",
    "山东-聊城市-东昌府区": "乡,镇,但斗虎屯镇,梁水镇,办事处,堂邑镇,,张炉集镇,郑家镇,侯营镇,沙镇镇,许营乡,朱老庄乡,于集镇",
    "山东-聊城市-茌平县": "村,信发街道,乐平铺镇,冯官屯镇,菜屯镇,博平镇,杜郎口镇,韩屯镇,洪官屯乡,肖庄乡,贾寨乡,韩集乡,广平乡,胡屯乡,温陈乡,杨官屯乡",
    "山东-聊城市-冠县": "村,贾镇,桑阿镇,柳林镇,清水镇,东古城镇,北馆陶镇,斜店乡,梁堂乡,定远寨乡,辛集乡,范寨乡,甘官屯乡,兰沃乡,店子乡,烟庄乡,万善乡",
    "山东-聊城市-高唐县": "村,梁村镇,尹集镇,清平镇,固河镇,三十里铺镇,琉璃寺镇,杨屯乡,赵寨子乡,姜店乡",
    "山东-聊城市-临清市": "村,松林镇,老赵庄镇,康庄镇,魏湾镇,刘垓子镇,八岔路镇,潘庄镇,烟店镇,唐园镇,金郝庄乡,戴湾乡,尚店乡",
    "山东-滨州市-滨城区": "里则街道,杜店街道,沙河街道,旧镇,堡集镇,尚集乡,单寺乡",
    "山东-滨州市-邹平县": "村,黛溪街道,高新街道,长山镇,魏桥镇,西董镇,好生镇,临池镇,焦桥镇,韩店镇,孙镇,九户镇,青阳镇,明集镇,台子镇,码头镇",
    "山东-菏泽市-牡丹区": "乡,丹阳街道,岳程街道,沙土镇,吴店镇,王浩屯镇,黄堽镇,都司镇,高庄镇,小留镇,李村镇,马岭岗镇,安兴镇,大黄集镇,吕陵镇,胡集乡,皇镇乡",
    "山东-菏泽市-曹县": "村,庄寨镇,普连集镇,青堌集镇,桃源集镇,韩集镇,砖庙镇,古营集镇,位湾镇,侯集回族镇,苏集镇,孙老家镇,阎店楼镇,梁堤头镇,安蔡楼镇,邵庄镇,王集镇,青岗集乡,常乐集乡,倪集乡,楼庄乡,郑庄乡,大集乡,朱洪庙乡,仵楼乡",
    "山东-菏泽市-单县": "村,郭村镇,黄岗镇,终兴镇,孙溜镇,高韦庄镇,徐寨镇,蔡堂镇,朱集镇,李新庄镇,浮岗镇,莱河镇,时楼镇,杨楼镇,张集镇,龙王庙镇,谢集乡,高老家乡,曹庄乡,李田楼乡",
    "山东-菏泽市-成武县": "村,大田集镇,天官镇,汶上集镇,南鲁集镇,伯乐集镇,苟村集镇,白浮图镇,孙寺镇,九女集镇,党集乡,张楼乡",
    "山东-菏泽市-巨野县": "乡,镇,村,巨野县技工学校,肾脏病医院,职教城区,乡道路管理处,公路局,巨独线,宜海棉业公司,富豪金属制品有限公司,巨田线,供水公司",
    "山东-菏泽市-郓城县": "乡,镇,村,黄河河务局,恒通纺织公司,饲料公司,棉麻纺织厂,聋哑学校,火车站,华信电子公司,友谊医院,鲁发公司,鲁源纺织公司",
    "山东-菏泽市-鄄城县": "乡,镇,村",
    "山东-菏泽市-定陶县": "开发区,管理区,郊区,科技园,技术园区,工业园,济阴路,临商路,青年路,创伤医院,乡,镇,村",
    "山东-菏泽市-东明县": "乡,镇,村",
    "河南-郑州市-中原区": "马寨镇,须水镇,医院,常庄,侯寨,郑上路,贾砦,汽配城,客车厂",
    "河南-郑州市-二七区": "乡,镇,村",
    "河南-郑州市-管城回族区": "乡,镇,村",
    "河南-郑州市-金水区": "古荥镇,金桥路,花园路口,龙子湖,甫田,白沙镇,南四环路,南曹乡,郑平路,郑密路,西四环路,冯湾区,大河路,下坡杨",
    "河南-郑州市-上街区": "夏侯村,聂寨村,任庄村,二十里铺村,朱寨村,肖洼村,东柏社村,矿山街道,峡窝镇",
    "河南-郑州市-中牟县": "乡,镇,村",
    "河南-郑州市-巩义市": "河镇,新中镇,小关镇,竹林镇,大峪沟镇,河洛镇,站街镇,康店镇,北山口镇,西村镇,芝田镇,回郭镇,鲁庄镇,夹津口镇,涉村镇",
    "河南-郑州市-荥阳市": "村,乔楼镇,豫龙镇,广武镇,王村镇,汜水镇,高山镇,刘河镇,崔庙镇,贾峪镇,城关乡,高村乡,金寨回族乡",
    "河南-开封市-龙亭区": "北郊乡,柳园口乡",
    "河南-开封市-鼓楼区": "小王屯村,杨四庄村,南柴屯村,丰收岗村,牛墩村,杨砦村,刘寺村,浅河村,蔡屯村,仙人庄村,茶庵村,辛仓村,何楼村,马头刘村,北梁坟村,沙胡刘村,新城集村,龙王庙村",
    "河南-洛阳市-老城区": "邙山镇,乡,村",
    "河南-洛阳市-涧西区": "飞机场路,乡,村",
    "河南-洛阳市-吉利区": "吉利乡",
    "河南-洛阳市-洛龙区": "龙门镇,白马寺镇,李楼乡,村",
    "河南-洛阳市-新安县": "村,石寺镇,五头镇,磁涧镇,铁门镇,石井乡,仓头乡,北冶乡,曹村乡,正村乡,南李村乡",
    "河南-洛阳市-嵩县": "村,城关镇,田湖镇,车村镇,旧县镇,阎庄镇,大坪乡,库区乡,何村乡,德亭乡,大章乡,纸房乡,饭坡乡,九店乡,黄庄乡,木植街乡,白河乡",
    "河南-洛阳市-洛宁县": "乡,镇,村",
    "河南-洛阳市-偃师市": "村,翟镇,林场,顾县镇,高龙镇,佃庄镇,城关镇,岳滩镇,山化乡,大口乡,首阳山镇,邙岭乡,寇店镇,佛光乡,诸葛镇,李村镇,府店镇,缑氏镇,庞村镇",
    "河南-平顶山市-新华区": "大郭镇,赵陵铺镇,西三庄乡,杜北乡",
    "河南-平顶山市-卫东区": "矿区,东安路街道,优越路街道,五一路街道,建设路街道,魏寨村,吴寨村,吕庄村,赵庄村,程庄村,辛北村,申楼村,皇台徐村,下牛村,竹园村,上张村,东高皇乡",
    "河南-平顶山市-湛河区": "马庄村,西铁炉村,岳庄村,程庄村,牛庄村,李乡宦村,姚孟村,九里山街道,东铁炉村,柏楼村,高楼村,后城村,杨西村,召村村,小营村,北渡镇,曹镇乡",
    "河南-安阳市-文峰区": "乡,镇,村",
    "河南-安阳市-北关区": "乡,镇,村",
    "河南-安阳市-殷都区": "乡,镇,村司空新村,保护区,彰北社区,范家庄,侯庄,柴库村",
    "河南-安阳市-龙安区": "乡,镇,村",
    "河南-安阳市-安阳县": "乡,镇,村",
    "河南-鹤壁市-淇滨区": "巨桥镇,工业区",
    "河南-新乡市-红旗区": "洪门镇,公村,王村,牛村,人民西路",
    "河南-新乡市-牧野区": "市政府",
    "河南-焦作市-解放区": "嘉禾屯,涧西街,园林路,安康医院",
    "河南-焦作市-中站区": "焦克路",
    "河南-焦作市-山阳区": "焦辉路,药王庙",
    "河南-焦作市-沁阳市": "村,崇义镇,西向镇,西万镇,柏香镇,山王庄镇,紫陵镇,常平乡,王召乡,王曲乡",
    "河南-濮阳市-华龙区": "油田,一公司,三公司,四公司,特修厂,国电,职业技术学院",
    "河南-濮阳市-南乐县": "村,韩张镇,元村镇,杨村乡,张果屯乡,千口乡,福堪乡,谷金楼乡,西邵乡,寺庄乡,梁庄乡,近德固乡",
    "河南-濮阳市-濮阳县": "村,柳屯镇,文留镇,庆祖镇,八公桥镇,徐镇镇,户部寨乡,清河头乡,鲁河乡,梁庄乡,王称固乡,白罡乡,梨园乡,五星乡,子岸乡,胡状乡,郎中乡,海通乡,渠村乡,习城乡",
    "河南-许昌市-襄城县": "乡,镇,村",
    "河南-许昌市-禹州市": "村,神垕镇,方山镇,顺店镇,无梁镇,鸿畅镇,梁北镇,古城镇,火龙镇,文殊镇,方岗乡,郭连乡,朱阁乡,苌庄乡,张得乡,小吕乡,范坡乡,褚河乡,磨街乡,浅井乡,花石乡,鸠山乡,回族乡",
    "河南-许昌市-长葛市": "村,和尚桥镇,坡胡镇,后河镇,石固镇,老城镇,南席镇,大周镇,董村镇,增福庙乡,官亭乡,石象乡,古桥乡",
    "河南-漯河市-源汇区": "东吴村,挂刀营村,何王庄村,闫庄村,圪瘩刘村,南关村,毛寨村,丁庄村,马夫张村,干河陈村,丁湾村,小村铺村,大荆庄村,姬崔村,三里桥村,大刘镇,阴阳赵乡,问十乡,空冢郭乡",
    "河南-漯河市-郾城区": "居委会,王方庄村,董庄村,后周村,张胡魏村,李盘庄村,小高庄村,石槽赵村,白庙村,前周村,郭庄村,孙庄村,大高庄村,小李庄村,城关镇,孟庙镇,商桥镇,裴城镇,新店镇,龙城镇,黑龙潭乡,李集乡",
    "河南-漯河市-召陵区": "万庄村,王裴村,柳庄村,翟庄村,大河村,龙塘村,冯庄村,梨园周村,英杨村,范庄村,洼张村,召陵镇,邓襄镇,万金镇,老窝镇,后谢乡,姬石乡,青年村乡",
    "河南-三门峡市-湖滨区": "银昌路,荣惠路,歪桥,候桥,东环路,上村",
    "河南-三门峡市-渑池县": "村,英豪镇,张村镇,洪阳镇,天池镇,仰韶乡,仁村乡,果园乡,陈村乡,坡头乡,段村乡,南村乡",
    "河南-三门峡市-义马市": "乡,镇,村",
    "河南-南阳市-宛城区": "白河镇,溧河镇,汉仲乡,金华镇,黄台岗镇,红泥湾镇,七里园乡",
    "河南-南阳市-卧龙区": "靳岗乡,庶山镇,蒲山镇,安臬镇,潦河镇,青华镇",
    "河南-南阳市-唐河县": "村,源潭镇,张店镇,郭滩镇,湖阳镇,黑龙镇,大河屯镇,龙潭镇,桐寨铺镇,苍台镇,上屯镇,毕店镇,少拜寺镇,城郊乡,桐河乡,昝岗乡,祁仪乡,马振抚乡,古城乡,东王集乡",
    "河南-南阳市-新野县": "村,王庄镇,沙堰镇,新甸铺镇,五星镇,施庵镇,歪子镇,溧河铺镇,王集镇,城郊乡,前高庙乡,樊集乡,上庄乡,上港",
    "河南-商丘市-梁园区": "部队",
    "河南-商丘市-睢阳区": "火神台,古城",
    "河南-信阳市-浉河区": "吴家店镇,董家河,浉河港,十三里桥,谭家河,柳林,鸡公山,李家寨镇,东双河镇,乡,村",
    "河南-信阳市-平桥区": "洋河,五里店镇,肖王,肖店,长台关,胡店,平昌关镇,高粱店,王岗,邢集镇,明港镇,羊山新区,银钱村,中环路,北环路,新农专,黑马石村,中山铺,袁寨,乡,村",
    "河南-信阳市-淮滨县": "",
    "河南-周口市-川汇区": "南郊乡,西郊乡,东郊乡,北郊乡,村",
    "河南-驻马店市-驿城区": "文城镇,刘阁乡,河里王乡,关王庙,村",
    "河南-省直辖-济源市": "村,乡,玉泉街道,克井镇,五龙口镇,轵城镇,承留镇,邵原镇,坡头镇,梨林镇,大峪镇,思礼镇,王屋镇,下冶镇",
    "湖北-武汉市-江岸区": "堤角,谌家机",
    "湖北-武汉市-江汉区": "",
    "湖北-武汉市-硚口区": "",
    "湖北-武汉市-汉阳区": "",
    "湖北-武汉市-武昌区": "",
    "湖北-武汉市-青山区": "武钢,白玉山,船厂,武东,石化,电厂,工人村,青山镇,建设乡,火关庙,厂前,黄家大湾,冶金大道",
    "湖北-武汉市-洪山区": "沿湖大道,沙滩浴场,植物园,左岭镇,九峰乡,关南村,金口,武黄路,豹懈,花山镇,葛化,土桥,东湖磨山风景区,武豹路,磨山小区,大李村,技工学校,夹山,沙湾村,原家山,团山路,南望山,喻家山路,武金堤公路,陆家街,万福林,堤东街,江明路,堤后街,堤前街,大学城,野芷路,板桥,青菱乡,武太闸",
    "湖北-武汉市-东西湖区": "农场,走马岭,辛安渡,东山头,旅游区,投资区,革新村",
    "湖北-武汉市-汉南区": "乡,镇,村",
    "湖北-武汉市-蔡甸区": "乡,镇,村",
    "湖北-武汉市-江夏区": "豹澥镇,龙泉镇,五里界镇,乌龙泉,法泗,湖泗,山坡,郑店,金口,金水闸,河垴,工业园,大学城,武汉大学,板桥",
    "湖北-武汉市-黄陂区": "乡,镇,村",
    "湖北-武汉市-新洲区": "辛冲镇,徐古镇,凤凰镇",
    "湖北-黄石市-黄石港区": "",
    "湖北-黄石市-下陆区": "",
    "湖北-黄石市-阳新县": "乡,镇,村",
    "湖北-黄石市-大冶市": "乡,镇,村",
    "湖北-十堰市-茅箭区": "",
    "湖北-十堰市-张湾区": "",
    "湖北-十堰市-郧西县": "乡,镇,村",
    "湖北-十堰市-房县": "乡,镇,村",
    "湖北-十堰市-丹江口市": "乡,镇,村",
    "湖北-宜昌市-西陵区": "",
    "湖北-宜昌市-伍家岗区": "伍家乡",
    "湖北-宜昌市-夷陵区": "乡,镇,村",
    "湖北-宜昌市-秭归县": "乡,镇,村",
    "湖北-宜昌市-宜都市": "姚家店乡,五眼泉乡,潘家湾,土家族乡,王家畈乡",
    "湖北-宜昌市-当阳市": "检察院,公安局,商务局,法院,文化局,环保局,部队,乡,镇,村,开发区,管理区,郊区,科技园,技术园区,工业园",
    "湖北-宜昌市-枝江市": "七星台镇,问安镇,董市镇,安福寺镇,白洋镇,百里洲镇,顾家店镇,仙女镇",
    "湖北-孝感市-孝南区": "维达纸厂,恒安集团,东方冷饮厂",
    "湖北-孝感市-大悟县": "乡,镇,村",
    "湖北-荆州市-江陵县": "乡,镇,村",
    "湖北-黄冈市-麻城市": "",
    "湖南-长沙市-芙蓉区": "乡,镇,村,屯,开发区",
    "湖南-长沙市-天心区": "中意三路,中意二路,工业园,伊来克斯大道,云塘校区,黑石铺,同升湖,一力物流,5712工厂,软件职业学院,炮兵学院,大托铺,科技职院,水电八局,暮云",
    "湖南-长沙市-岳麓区": "雷锋镇,叙铺镇,黄花堂,桥驿镇,莲花镇,平塘镇,含铺镇,铜官镇",
    "湖南-长沙市-开福区": "盛世路,景香院,滨江美寓,恒鑫澜北湾,金霞小区,汽车北站,工业园,办事处,北国风光,黄金海岸,金霞路,捞刀河,落刀嘴,青竹湖,广福园,金霞菀,珠江花城,周南中学,处理厂,福元路",
    "湖南-长沙市-雨花区": "黎托",
    "湖南-长沙市-长沙县": "村,毛塘铺,黄兴镇,黄花机场,榔犁镇,捞刀河,江背镇,永安镇,春华镇,鸭子铺,安沙镇,跳马乡,金井镇,东岸乡,双龙家园,工程职院,水渡河,安全职院,贺龙体校,暮云镇,黎托乡,福临镇,青竹湖",
    "湖南-长沙市-望城县": "乡,镇,村",
    "湖南-株洲市-荷塘区": "党校,车辆厂,颂家桥,戴家岭,金工业园,财校,工业大学,办事处",
    "湖南-株洲市-芦淞区": "五里墩",
    "湖南-株洲市-石峰区": "科技大学,高科园",
    "湖南-株洲市-天元区": "白马城,马家河,新开铺,太子奶集团,楚天花园",
    "湖南-湘潭市-雨湖区": "鹤岭镇,楠竹山镇,乡,村",
    "湖南-湘潭市-岳塘区": "九华都,伍家花园,四大桥,涟水桥,乡,村",
    "湖南-湘潭市-湘潭县": "乡,镇,村",
    "湖南-衡阳市-珠晖区": "二七二厂,盐矿,茶山坳,周家坳,东阳度,工学院",
    "湖南-衡阳市-雁峰区": "罗金桥,监狱,啤酒厂,铜桥港,变电工,拖拉机厂,师范学院,技师学院",
    "湖南-衡阳市-石鼓区": "工业园,古木乡,机械厂",
    "湖南-衡阳市-蒸湘区": "呆雁岭,经贸学校",
    "湖南-邵阳市-双清区": "乡,镇,村,物勘院,纸板厂,第十一中学,家禽,洋溪桥",
    "湖南-邵阳市-大祥区": "乡,镇,村,七里坪,警官学校,技术学院,医专学校,玉溪桥,新滩镇,东信棉业,新渡,磨石,8531厂",
    "湖南-邵阳市-北塔区": "雪峰北路,田江乡,云山桥,村",
    "湖南-岳阳市-岳阳楼区": "湖滨,城陵矶,湖滨,郭镇,康王,八字门,梅溪乡,乌江乡,三合乡",
    "湖南-常德市-武陵区": "华南光电厂,灌溪工业园,乡,镇,村",
    "湖南-常德市-鼎城区": "乡,镇,村",
    "湖南-张家界市-永定区": "新桥镇,温塘镇,教字垭镇,大坪镇,沅古坪镇,尹家溪镇,后坪镇,阳湖坪镇,王家坪镇,三家馆乡,沙堤乡,枫香岗乡,合作桥乡,双溪桥乡,谢家垭乡,青安坪乡,罗塔坪乡,罗水乡,桥头乡,三岔乡,四都坪乡,村",
    "湖南-益阳市-资阳区": "乡,镇,村",
    "湖南-益阳市-赫山区": "衡龙桥,龙光桥,石壁湖,工业园,长春镇,黄泥湖乡,苍水浦,职业学院,泥浆口,十七中学,镇,村",
    "湖南-益阳市-南县": "大通湖区,中鱼口乡,茅草街镇,乌嘴,青树嘴,胜天,乡,镇,村",
    "湖南-郴州市-北湖区": "村,石盖塘镇,良田镇,槐树下镇,华塘镇,坳上镇,鲁塘镇,乐仙捕,梨树山,万华岩,城前岭,栖凤渡镇,马头岭,菁华园,收费站",
    "湖南-郴州市-苏仙区": "桥口镇,白露塘镇,湘南学院,王仙岭区,郴资桂大道,金旺路,梯子岭,石柳湾村镇,卜里坪村,苏仙岭村,京珠高速路口,下湄桥村,狮马洞村,麻制品厂,郴北火车站,梁家湾镇,许家洞镇",
    "湖南-永州市-零陵区": "乡,镇,村",
    "湖南-永州市-冷水滩区": "村,梅湾街道,菱角山街道,肖家园街道,杨家桥街道,梧桐街道,凤凰街道,花桥街镇,普利桥镇,牛角坝镇,高溪市镇,黄阳司镇,上岭桥镇,竹山桥镇,伊塘镇,岚角山镇,蔡市镇,仁湾镇,珊瑚乡,杨村甸乡",
    "湖南-怀化市-鹤城区": "乡,镇,村,广电花园,五溪广场,学院,党校,石门",
    "湖南-娄底市-娄星区": "城南新区,经济开发区,新市政府,万宝工业园,职业学院",
    "湖南-湘西州-吉首市": "乡,镇,村",
    "广东-广州市-南沙区": "管理区,万顷沙,新垦,龙穴岛",
    "广东-广州市-荔湾区": "",
    "广东-广州市-越秀区": "",
    "广东-广州市-海珠区": "",
    "广东-广州市-天河区": "",
    "广东-广州市-萝岗区": "镇龙镇,长龙村,长平村",
    "广东-广州市-白云区": "天河学院,人和镇,太和镇,大源镇,大源村,新庄,老庄黄庄,经济学院,涉外学院,友好医院,友好老年公寓,万科四季花城,南湖高尔夫,万科蓝山,江南世家,沙太货运市场,金盘岭,丰和物流园,泰邦物流园,锦邦,石井镇,鸦岗村,物流园",
    "广东-广州市-黄埔区": "长洲岛",
    "广东-广州市-番禺区": "鱼窝头镇,大岗,潭洲,灵山,榄核,横沥",
    "广东-广州市-花都区": "花东镇,花山镇,梯面镇,炭步镇,赤坭镇,神山镇,北兴镇,渡假区,金碧御水山庄",
    "广东-广州市-增城市": "派潭镇,正果镇,三江镇,福和镇,小楼镇,沙庄镇,石滩镇,仙村镇,中新镇,宁西镇,乡,村",
    "广东-广州市-从化市": "良口镇,吕田镇,乡,村",
    "广东-韶关市-曲江区": "小坑镇,沙溪镇,乌石镇,樟市镇,枫湾镇,罗坑镇,乡",
    "广东-韶关市-武江区": "龙归镇,江湾镇,重阳镇,大塘镇,乡",
    "广东-韶关市-浈江区": "曲仁,田螺冲,犁市镇,花坪镇,乡",
    "广东-韶关市-始兴县": "马市镇,澄江镇,顿岗镇,罗坝镇,司前镇,隘子镇,城南镇,沈阳镇,乡,村",
    "广东-韶关市-仁化县": "闻韶镇,扶溪镇,长江镇,城口镇,红山镇,石塘镇,董塘镇,大桥镇,周田镇,黄坑镇,乡,村",
    "广东-韶关市-翁源县": "坝仔镇,江尾镇,周陂镇,新江镇,乡,村",
    "广东-韶关市-乳源瑶族自治县": "一六镇,桂头镇,洛阳镇,大布镇,大桥镇,东坪镇,游溪镇,必背镇,乡,村",
    "广东-韶关市-乐昌市": "北乡镇,九峰镇,廊田镇,长来镇,梅花镇,三溪镇,黄圃镇,五山镇,两江镇,沙坪镇,云岩镇,秀水镇,大源镇,庆云镇,白石镇,乡,村",
    "广东-韶关市-南雄市": "乌迳镇,界址镇,黄坑镇,邓坊镇,汕山镇,南亩镇,水口镇,江头镇,湖口镇,珠玑镇,主田镇,古市镇,全安镇,百顺镇,澜河镇,帽子峰镇,乡,村",
    "广东-深圳市-罗湖区": "",
    "广东-深圳市-福田区": "",
    "广东-深圳市-南山区": "大铲岛,友联造船厂,",
    "广东-深圳市-宝安区": "工业园,",
    "广东-深圳市-龙岗区": "沃尔玛配送中心,保税区,比亚迪,大亚湾核电站,",
    "广东-深圳市-盐田区": "",
    "广东-珠海市-香洲区": "六乡镇,前山镇,莲洲,上横,",
    "广东-珠海市-斗门区": "",
    "广东-珠海市-金湾区": "高栏港,海泉湾,乡,村",
    "广东-汕头市-金平区": "莲塘街道,乡,村",
    "广东-汕头市-龙湖区": "乡,村",
    "广东-汕头市-濠江区": "乡,村",
    "广东-汕头市-潮阳区": "海门镇,河溪镇,和平镇,西胪镇,关埠镇,金灶镇,谷饶镇,铜盂镇,乡,村",
    "广东-汕头市-潮南区": "检察院,公安局,商务局,法院,文化局,环保局,部队,开发区,管理区,郊区,科技园,技术园区,工业园,成田镇,陇田镇,仙城镇,雷岭镇,铜盂镇,红场镇,井都镇,乡",
    "广东-汕头市-澄海区": "莲华镇,上华镇,鸿盐镇,隆都镇,东里镇,溪南镇,湾头镇,坝头镇,乡,村",
    "广东-佛山市-禅城区": "紫洞村,紫南村,湖涌村,罗南村,堤田村,杏头村,梧村,村尾村,龙津村",
    "广东-佛山市-南海区": "西樵镇,九江镇,沙头镇,丹灶镇,里水镇,和顺镇,官窑镇,松岗镇,工业园,工业区,凤岗,狮岭,林岳村,下安村,南沙村,生态园,上灶,中灶,下灶,大岸村,仙岗村,良登村,银河村,上东村,下东村,河清村,璜玑村,新龙村,镇南村,烟南村,英明村,石江村,大同村,华夏村,大岸村,民乐村,百西村,太平村,崇南村,河岗村,念岗村,海州村,新田村,小布村,汤村,鲁岗村,贤僚村,石塘村,丁浦村,南浦村,沙头村,乡",
    "广东-佛山市-顺德区": "均安,杏坛,龙江,乐从,北滘,乡,村",
    "广东-佛山市-三水区": "冈头,新生,凤果,抱龙桥,六和镇,黄塘,范湖,嘉利普公司,乡,村",
    "广东-江门市-蓬江区": "潮连街道,荷塘镇",
    "广东-江门市-江海区": "乡,村,江南,滘北",
    "广东-江门市-新会区": "沙堆镇,崖西,崖南,崖门,古井,三江,司前,大泽,乡,村",
    "广东-江门市-台山市": "乡,村,大江,都斛,赤溪,冲蒌,斗山,广海,川岛,端芬,海宴,汶村,三合,北陡,深井,白沙",
    "广东-江门市-开平市": "乡,村,三埠,月山,水口,赤水,金鸡,蚬冈,百合,赤坎,塘口,大沙,马冈,龙胜,苍城,沙塘",
    "广东-江门市-鹤山市": "乡,村,鹤城镇,共和镇,址山镇,宅梧镇,云乡镇,双合镇",
    "广东-湛江市-赤坎区": "调顺路",
    "广东-湛江市-霞山区": "",
    "广东-湛江市-麻章区": "志满,太平,高阳,海洋大学,乡,村",
    "广东-湛江市-坡头区": "乡,村,坡头,龙头,乾塘,南三,官渡",
    "广东-湛江市-遂溪县": "乡,村,黄略,建新,岭北,城月,河头,江洪,乐民,乌塘,北坡,港门,草潭,洋青,杨柑,界炮",
    "广东-湛江市-徐闻县": "乡,村,和安,曲界,锦和,新寮,下洋,前山,龙塘,海安,迈陈,西连,下桥,南山,城北,角尾",
    "广东-湛江市-廉江市": "乡,村,石角,河唇,良垌,石城,新民,安埔,营仔,车板,横山,高桥,和寮,雅塘,青平,石岭,石颈,吉水,长山,塘蓬",
    "广东-湛江市-雷州市": "乡,村,沈塘,东里,雷高,调风,英利,南兴,龙门,松竹,覃斗,乌石,北和,企水,唐家,杨家,纪家,白沙,客路,附城",
    "广东-茂名市-茂南区": "乡,村,金塘镇,公馆镇,新坡镇,镇盛镇,鳌头镇,袂花镇,高山镇,山阁镇,红旗街道,河西街道,河东街道,露天矿街道,新华街道,官渡街道",
    "广东-茂名市-茂港区": "乡,村,高地街道,羊角镇,坡心镇,七径镇,小良镇,沙院镇",
    "广东-茂名市-电白县": "乡,村,林头,霞洞,黄岭,那霍,沙琅,罗坑,观珠,望夫,马踏,岭门,麻岗,旦场,树仔,电城,博贺",
    "广东-茂名市-高州市": "乡,村,山美,宝光,金山,石仔岭,潭头,大井,东岸,深镇,曹江,长坡,平山,古丁,马贵,大坡,谢鸡,新垌,云潭,泗水,根子,荷塘,分界,石鼓,镇江,沙田,石板,荷花,南塘",
    "广东-茂名市-化州市": "乡,村,河西,下郭,石湾,南盛,丽岗,宝圩,同庆,长岐,杨梅,良光,笪桥,新安,官桥,中垌,平定,文楼,林尘,合江,江湖,那务,播扬",
    "广东-茂名市-信宜市": "乡,村,池洞,朱砂,贵子,怀乡,洪冠,平塘,思贺,白石,钱排,新宝,合水,大成,水口,镇隆,北界,金垌,茶山,丁堡",
    "广东-肇庆市-端州区": "",
    "广东-肇庆市-鼎湖区": "乡,村,坑口,广利,永安,沙浦,凤凰,莲花",
    "广东-肇庆市-高要市": "乡,村,金利,白土,回龙,蛟塘,莲塘,活道,新桥,白诸,禄步,小湘,河台,乐城,水南",
    "广东-肇庆市-四会市": "乡,村,城中,龙甫,地豆,威整,罗源,迳口,石狗,黄田,下茆,江谷",
    "广东-惠州市-惠城区": "潼湖镇,横沥镇,仍图镇,沥林镇,汝湖镇,矮陂镇,芦洲镇,观音阁,潼桥镇,陈江,橙海村,水围新村,东升村,梧村,水北村,东江村,幸福村,南旋,下角梅湖,工业区,乡,村",
    "广东-惠州市-惠阳区": "镇隆镇,新圩镇,约场圩,霞涌街道,沙田镇,塘布村,良井镇,永湖镇,比亚迪,乡,村",
    "广东-惠州市-博罗县": "公庄镇,柏塘镇,杨村镇,麻陂镇,石坝镇,泰美镇,园洲镇,石湾镇,龙华镇,福田镇,长宁镇,湖镇镇,观音阁镇,杨侨镇,平安镇,乡,村",
    "广东-惠州市-惠东县": "安墩镇,宝口镇,高潭镇,多祝镇,白盆珠镇,梁化镇,吉隆镇,黄埠镇,稔山镇,白花镇,巽寮,增光镇,铁涌镇,平海镇,港口镇,盐洲镇,乡,村",
    "广东-梅州市-梅江区": "长沙镇,城北镇,白宫镇,西阳镇,三角镇,乡,村",
    "广东-梅州市-梅县": "西阳镇,畲江镇,水车镇,梅南镇,南口镇,丙村镇,大坪镇,城东镇,石坑镇,石扇镇,松源镇,桃尧镇,隆文镇,松口镇,白渡镇,雁洋镇,梅西镇,BPW车轴厂,乡,村",
    "广东-梅州市-五华县": "河东镇,郭田镇,双华镇,棉洋镇,安流镇,梅林镇,龙村镇,横陂镇,华阳镇,周江镇,长布镇,潭下镇,岐岭镇,转水镇,华城镇,乡,村",
    "广东-梅州市-平远县": "仁居镇,东石镇,石正镇,八尺镇,差干镇,上举镇,泗水镇,长田镇,热柘镇,中行镇,河头镇,乡,村",
    "广东-梅州市-蕉岭县": "广福镇,文福镇,新铺镇,三圳镇,南礤镇,蓝坊镇,长潭镇,乡,村",
    "广东-梅州市-兴宁市": "龙田镇,宁新街道,合水镇,黄陂镇,黄槐镇,石马镇,永和镇,坭陂镇,新圩镇,水口镇,刁坊镇,新陂镇,叶塘镇,大坪镇,罗岗镇,罗浮镇,宁中镇,径南镇,乡,村",
    "广东-汕尾市-城区": "田乾街道,东洲街道,遮浪街道,捷胜镇,红草镇,马宫街道,铺边镇,东涌镇,遮浪街道,乡,村",
    "广东-汕尾市-海丰县": "黄羌镇,大湖镇,赤坑镇,梅陇镇,鹅埠镇,鲘门镇,联安镇,莲花镇,赤石镇,小漠镇,陶河镇,平东镇,公平镇,可塘镇,乡,村",
    "广东-汕尾市-陆丰市": "河西街道,湖东镇,碣石镇,金厢镇,潭西镇,甲西镇,上英镇,西南镇,内湖镇,河东镇,博美镇,八万镇,大安镇,龙潭镇,桥冲镇,陂洋镇,铜锣湖乌坎,南塘镇,甲子镇,甲东镇,管理区,乡,村",
    "广东-河源市-源城区": "开发区,埔前镇,桂山风景区,万绿湖风景区,乡,村",
    "广东-河源市-紫金县": "龙窝镇,九和镇,上义镇,蓝塘镇,凤安镇,义容镇,古竹镇,临江镇,柏埔镇,黄塘镇,敬梓镇,水墩镇,南岭镇,苏区镇,瓦溪镇,好义镇,中坝镇,乡,村",
    "广东-河源市-龙川县": "四都镇,黄石镇,细坳镇,车田镇,贝岭镇,黎咀镇,上坪镇,丰稔镇,赤光镇,龙母镇,逥龙镇,田心镇,铁场镇,登云镇,通衢镇,鹤市镇,黄布镇,紫市镇,佗城镇,岩镇镇,新田镇,义都镇,麻布岗镇,乡,村",
    "广东-阳江市-江城区": "白沙街道,中洲街道,埠场镇,平冈镇,双捷镇,海陵镇,闸坡镇,乡,村",
    "广东-阳江市-阳西县": "乡,村,程村,溪头,上洋,沙扒,儒洞,新圩,塘口",
    "广东-阳江市-阳东县": "乡,村,北惯,合山,大沟,东平,雅韶,塘坪,大八,麻汕,那龙,新洲",
    "广东-阳江市-阳春市": "河塱,松柏,陂面,合水,春湾,岗美,河口,潭水,八甲,双窖,永宁,圭岗,石望,马水,三甲,乡,村",
    "广东-清远市-清城区": "",
    "广东-清远市-佛冈县": "乡,村,高岗,水头,汤塘,龙山,迳头",
    "广东-清远市-清新县": "太平镇,山塘镇,乡,村",
    "广东-清远市-英德市": "望埠镇,青塘镇,沙口镇,白沙镇,浛光镇,东华镇,黎溪镇,连江口镇,鱼湾镇,九龙镇,明迳镇,波罗镇,大湾镇,黄花镇,桥头镇,石灰铺,横石塘镇,西牛镇,石牯塘,水边镇,乡,村",
    "广东-东莞市-东莞市": "岛",
    "广东-中山市-中山市": "",
    "广东-潮州市-湘桥区": "",
    "广东-潮州市-潮安县": "文祠镇,归湖镇,赤凤镇,凤凰镇,官塘镇,铁铺镇,磷溪镇,登塘镇,凤塘镇,乡,村",
    "广东-潮州市-饶平县": "大埕镇,海山镇,樟溪镇,浮山镇,汤溪镇,三饶镇,新圩镇,新丰镇,饶洋镇,上饶镇,建饶镇,浮滨镇,新塘镇,东山镇,乡,村",
    "广东-揭阳市-榕城区": "梅云街道,渔湖镇,仙窖乡,揭阳学院,溪南街道,乡,村",
    "广东-揭阳市-揭东县": "云路镇,玉窖镇,登岗镇,炮台镇,地都镇,霖磐镇,月城镇,白塔镇,龙尾镇,桂岭镇,锡场镇,新亨镇,玉湖镇,埔田镇,棉湖镇,乡,村",
    "广东-揭阳市-普宁市": "赤岗镇,南溪镇,广太镇,南径镇,占陇镇,军埠镇,高埔镇,云落镇,大坪镇,船埔镇,梅林镇,里湖镇,梅塘镇,燎原镇,大南山镇,下架山镇,大坝镇,麒麟镇,洪阳镇,鮜溪乡,乡,村",
    "广东-云浮市-云城区": "思劳镇,都杨镇,腰古镇,安塘镇,乡,村",
    "广东-云浮市-新兴县": "乡,村,水台,车岗,东成,稔村, 太平,六祖,大江,河头,天堂,簕竹,里洞",
    "广西-南宁市-兴宁区": "乡,镇,村,邕江大学,研究所,教育学院,林场,邕宾路,邕武路,园艺路,北湖北路5,客运站,昆仑大道",
    "广西-南宁市-青秀区": "乡,镇,村,外国语,柳沙,党校,佛子岭,大桥,青环路,柳沙半岛,河堤路,植物园,烈士陵园,德化路,长岗路,大学城",
    "广西-南宁市-西乡塘区": "乡,镇,村,学院,党校,罗文",
    "广西-南宁市-江南区": "乡,镇,村,银海大道,财经学院,南站大道,友谊路,定津路,工业区,职业技术学院",
    "广西-南宁市-良庆区": "乡,镇,村,银海大道,友谊路,金沙大道,南站大道,五一西路",
    "广西-南宁市-武鸣县": "乡,镇,村",
    "广西-南宁市-隆安县": "乡,镇,村",
    "广西-南宁市-马山县": "乡,镇,村",
    "广西-南宁市-上林县": "乡,镇,村",
    "广西-南宁市-宾阳县": "乡,镇,村",
    "广西-南宁市-横县": "乡,镇,村",
    "广西-柳州市-城中区": "乡,镇,村,蔗鸪江,沙塘,长塘,高新区,管委会,乡兰村",
    "广西-柳州市-鱼峰区": "乡,镇,村,古亭山,鹿山学院",
    "广西-柳州市-柳南区": "乡,镇,村,机场,鹿山,水泥厂,柳太路,砖厂,西鹅乡",
    "广西-柳州市-柳北区": "乡,镇,村,机械厂,白露乡,西专,林校,畜牧,化工",
    "广西-柳州市-柳江县": "乡,镇,村",
    "广西-柳州市-柳城县": "乡,镇,村",
    "广西-柳州市-鹿寨县": "乡,镇,村",
    "广西-柳州市-融安县": "乡,镇,村",
    "广西-柳州市-融水苗族自治县": "乡,镇,村",
    "广西-柳州市-三江侗族自治县": "乡,镇,村",
    "广西-桂林市-秀峰区": "乡,镇,村,庭江路,巾山路,甲山乡,长海路",
    "广西-桂林市-叠彩区": "乡,镇,村",
    "广西-桂林市-象山区": "乡,镇,村,遇龙路,沙河路,万福路,相人山路,疗养院",
    "广西-桂林市-七星区": "乡,镇,村,尧山,金鸡路,科技学院,横塘路,桂磨大道",
    "广西-桂林市-雁山区": "乡,镇,村",
    "广西-桂林市-阳朔县": "乡,镇,村",
    "广西-桂林市-临桂县": "乡,镇,村",
    "广西-桂林市-灵川县": "乡,镇,村",
    "广西-桂林市-全州县": "乡,镇,村,迎宾路,飞机坪,新塘坪",
    "广西-桂林市-兴安县": "村,界首镇,溶江镇,高尚镇,漠川乡,白石乡,崔家乡,严关乡,金石乡,华江乡,湘漓镇",
    "广西-桂林市-永福县": "乡,镇,村",
    "广西-桂林市-灌阳县": "乡,镇,村",
    "广西-桂林市-龙胜各族自治县": "乡,镇,村",
    "广西-桂林市-资源县": "乡,镇,村",
    "广西-桂林市-平乐县": "乡,镇,村",
    "广西-桂林市-荔浦县": "乡,镇,村",
    "广西-桂林市-恭城瑶族自治县": "乡,镇,村",
    "广西-梧州市-万秀区": "乡,镇,村",
    "广西-梧州市-蝶山区": "乡,镇,村,富民一路",
    "广西-梧州市-长洲区": "乡,镇,村",
    "广西-梧州市-苍梧县": "乡,镇,村",
    "广西-梧州市-藤县": "太平,二中,三中,四中,医院,技术学校,收费站",
    "广西-梧州市-蒙山县": "乡,镇,村",
    "广西-梧州市-岑溪市": "乡,镇,村",
    "广西-北海市-海城区": "南万,流下村,冠头岭,沙旁村,大坟海村,新村,石埠村,打席村,大老虎,小老虎,西塘社区,王屋村,符屋村,北背岭村,曲湾底村,红湾村,龙潭村,龙潭下村,大冠沙,新营,江边村,平阳村",
    "广西-北海市-银海区": "乾上村,三合口农场,新安村,新白泥塘,翁山村,螺壳村,陈屋南村,老旧场,新旧场,大山村,南窑,横路山村,下关井,和海村,周屋村,崇表岭,王屋村,陈屋北村,新吉车,监狱",
    "广西-北海市-合浦县": "乡,镇,村,中站",
    "广西-防城港市-港口区": "",
    "广西-防城港市-防城区": "",
    "广西-防城港市-上思县": "乡,镇,村,糖厂,华林,上华,水库,华润",
    "广西-钦州市-钦南区": "乡,镇,村,矿区,长滩,平吉,新棠,板城,那乡,那思",
    "广西-钦州市-钦北区": "乡,镇,村,黄屋车管所,龙湾,小董镇,大寺镇,那垌镇,钦州港",
    "广西-钦州市-灵山县": "乡,镇,村",
    "广西-钦州市-浦北县": "乡,镇,村",
    "广西-贵港市-港北区": "乡,镇,村,医院,华电,南环路,航运新村",
    "广西-贵港市-港南区": "乡,镇,村,医院,北环路,仙衣路,峡山,水泥厂",
    "广西-贵港市-平南县": "乡,镇,村",
    "广西-贵港市-桂平市": "乡,镇,村",
    "广西-玉林市-玉州区": "乡,镇,村,人民南路,开发区,仁东镇,天桥路,师范学院,东校区,南校区,肉联厂,下练塘,技工学校,体育城区,岭塘,仁厚镇,化肥厂,石子岭,茂林中学,白马岭,陈塘,石桥塘,富英,白水塘,罗村,马鞍山,平塘,松根塘,贡塘,看守所,英寸中学,覃坡,林村,下莲塘,上莲塘",
    "广西-玉林市-容县": "乡,镇,村",
    "广西-玉林市-陆川县": "乡,镇,村",
    "广西-玉林市-博白县": "乡,镇,村",
    "广西-玉林市-兴业县": "乡,镇,村",
    "广西-玉林市-北流市": "乡,镇,村",
    "广西-百色市-右江区": "乡,镇,村,大华路,大华厂,铝业,融达铜业,澄碧湖,机械厂,武警,大队,人造板,处理厂,六塘,五塘,四塘,东增路,那毕村屯",
    "广西-百色市-田阳县": "乡,镇,村",
    "广西-贺州市-八步区": "乡,镇,村,八达东路,第二高级中学,芳林路,陶瓷厂",
    "广西-贺州市-昭平县": "村,文竹镇,五将镇,黄姚镇,富罗镇,北佗镇,古袍镇,仙回乡,走马乡,凤凰乡,木格乡,富裕乡,庇江乡,九龙乡",
    "广西-贺州市-富川瑶族自治县": "乡,镇,村",
    "广西-河池市-金城江区": "乡,镇,村,玉峰路,建设路,北环路,南环路,乾霄路,中山路",
    "广西-河池市-南丹县": "乡,镇,村",
    "广西-河池市-天峨县": "乡,镇,村",
    "广西-河池市-凤山县": "乡,镇,村",
    "广西-河池市-东兰县": "乡,镇,村",
    "广西-河池市-罗城仫佬族自治县": "乡,镇,村",
    "广西-河池市-环江毛南族自治县": "乡,镇,村",
    "广西-河池市-巴马瑶族自治县": "乡,镇,村",
    "广西-河池市-都安瑶族自治县": "乡,镇,村",
    "广西-河池市-大化瑶族自治县": "乡,镇,村",
    "广西-河池市-宜州市": "乡,镇,村",
    "广西-来宾市-兴宾区": "乡,镇,村,电厂,糖纸,锰业,农场,长梅路,莆田,八一,凤凰,迁江,小平阳,桥巩,良江",
    "广西-崇左市-江洲区": "乡,镇,村,新和,那隆,驮卢,江州镇,左州",
    "广西-崇左市-扶绥县": "乡,镇,村",
    "广西-崇左市-宁明县": "乡,镇,村,机场,东亚集团,糖厂,域中镇",
    "广西-崇左市-龙州县": "乡,镇,村",
    "广西-崇左市-大新县": "乡,镇,村",
    "广西-崇左市-天等县": "乡,镇,村,龙茗,进结,向都,进远,宁干,都康,东平,小山,上映,把荷,福新,驮堪",
    "广西-崇左市-凭祥市": ",乡,镇,村",
    "海南-海口市-秀英区": "开发区,海榆中线,度假酒店,高尔夫,苍西村,火车站,长流镇,西秀镇,海秀镇,乡,村",
    "海南-海口市-龙华区": "云龙镇,演丰镇,红旗镇,三门坡镇,甲子镇,大坡镇,乡,村",
    "海南-海口市-美兰区": "灵山镇,龙桥镇,龙塘镇,龙泉镇,新坡镇,旧州镇,乡,村",
    "海南-海口市-琼山区": "东山镇,遵谭镇,永兴镇,石山镇,河口路,勋亭路,乡,村",
    "海南-省直辖-琼海市": "乡,镇,村,农场",
    "海南-省直辖-儋州市": "乡,镇,村,农场,海南大学,农业科学院",
    "海南-省直辖-文昌市": "乡,镇,村,农场",
    "海南-省直辖-万宁市": "乡,镇,村,农场",
    "海南-省直辖-东方市": "乡,镇,村,农场",
    "海南-省直辖-定安县": "乡,镇,村,农场",
    "海南-省直辖-屯昌县": "乡,镇,村,农场",
    "海南-省直辖-澄迈县": "乡,镇,村,农场",
    "海南-省直辖-临高县": "乡,镇,村,农场",
    "海南-省直辖-白沙黎族自治县": "乡,镇,村,农场",
    "海南-省直辖-昌江黎族自治县": "乡,镇,村,农场,水泥厂,大坡",
    "海南-省直辖-乐东黎族自治县": "乡,镇,村,农场",
    "海南-省直辖-陵水黎族自治县": "香水湾,乡,镇,村,农场",
    "海南-省直辖-保亭黎族苗族自治县": "乡,镇,村,农场",
    "海南-省直辖-琼中黎族苗族自治县": "乡,镇,村,农场",
    "重庆-重庆市-渝中区": "",
    "重庆-重庆市-大渡口区": "五一村,公民村,长征厂,中板厂,材料厂,茄子溪,伏牛溪,伏牛溪末站,吊儿嘴,建胜镇,陈家坝,跳登镇",
    "重庆-重庆市-江北区": "乡,镇,望江,郭家沱,大竹林,农场,寸滩,溉兰溪,铁山坪,工业园,大川水岸,石子山,石马,河下花园,中法供水,塔山村,观音寺,青草坝,船舶厂区,江北城,小双碑,大双碑,,余家湾,村",
    "重庆-重庆市-沙坪坝区": "田坝,华岩,玉清寺,人和场,西铁村,园区,工业园,,玉屏,曾家镇,林园,歌乐山镇,山洞,走马,含谷,青木关,凤凰镇,土主镇,虎溪,陶家,井口,双碑,回龙坝,融智学院,工商大学,南溪口,中梁山,华岩一村,三村,四村",
    "重庆-重庆市-九龙坡区": "白市驿,铜罐驿,陶家,元明镇,含谷镇,金凤镇,二朗,华建支路,二朗华庆路,巴福镇",
    "重庆-重庆市-南岸区": "峡口镇,南山镇,洋人街,涂山镇,黄桷垭镇,邮电大学,外国语学校,崇文路,长生桥镇,常工业园,鸡冠石镇,迎龙镇,广阳镇,明月沱,广阳坝,团结村,广黔路,四公里街特,二塘村,红子邦,大兴场,道角",
    "重庆-重庆市-北碚区": "施家梁镇,蔡家岗镇,蔡家组团,童家溪镇,同兴北路,同兴南路,灯塔镇,水土镇,静观镇,复兴镇,三圣镇,石坝乡,柳荫镇,偏岩镇,金刀峡镇,天府镇,代家沟,后丰岩,东阳镇,西山坪,石子山",
    "重庆-重庆市-万盛区": "乡,镇,村",
    "重庆-重庆市-双桥区": "乡,镇,村",
    "重庆-重庆市-渝北区": "乡,镇,村",
    "重庆-重庆市-巴南区": "小泉,南泉镇,软件学院,界石,南彭,接龙乡",
    "重庆-重庆市-万州区": "五桥,双河口,龙都广场,乡,镇,村",
    "重庆-重庆市-涪陵区": "乡,镇,村",
    "重庆-重庆市-黔江区": "乡,镇,村",
    "重庆-重庆市-长寿区": "晏家街办,工业园,乡,镇,村",
    "重庆-重庆市-江津区": "乡,镇,村",
    "重庆-重庆市-合川区": "乡,镇,村",
    "重庆-重庆市-南川区": "乡,镇,村",
    "重庆-重庆市-綦江县": "乡,镇,村",
    "重庆-重庆市-潼南县": "乡,镇,村",
    "重庆-重庆市-铜梁县": "乡,镇,村",
    "重庆-重庆市-大足县": "乡,镇,村",
    "重庆-重庆市-荣昌县": "乡,镇,村",
    "重庆-重庆市-璧山县": "乡,镇,村",
    "重庆-重庆市-梁平县": "乡,镇,村",
    "重庆-重庆市-城口县": "乡,镇,村",
    "重庆-重庆市-丰都县": "乡,镇,村",
    "重庆-重庆市-垫江县": "乡,镇,村",
    "重庆-重庆市-武隆县": "乡,镇,村",
    "重庆-重庆市-忠县": "乡,镇,村",
    "重庆-重庆市-开县": "乡,镇,村",
    "重庆-重庆市-云阳县": "乡,镇,村",
    "重庆-重庆市-奉节县": "乡,镇,村",
    "重庆-重庆市-巫山县": "乡,镇,村",
    "重庆-重庆市-巫溪县": "乡,镇,村",
    "重庆-重庆市-石柱土家族自治县": "乡,镇,村",
    "重庆-重庆市-秀山土家族苗族自治县": "乡,镇,村",
    "重庆-重庆市-酉阳土家族苗族自治县": "乡,镇,村",
    "重庆-重庆市-彭水苗族土家族自治县": "乡,镇,村",
    "四川-成都市-锦江区": "乡,镇,村",
    "四川-成都市-青羊区": "乡,镇,村",
    "四川-成都市-金牛区": "乡,镇,村,沙西线,凤凰山",
    "四川-成都市-武侯区": "乡,镇,村",
    "四川-成都市-成华区": "乡,镇,村",
    "四川-成都市-龙泉驿区": "村,阳光城,新龙镇,同安镇,平安镇,天伦国际大酒店,红河镇,三圣乡,洛带镇,西河镇",
    "四川-成都市-青白江区": "乡,镇,村",
    "四川-成都市-新都区": "乡,村,龙桥镇,新繁镇,班竹园镇,龙虎镇,木兰镇,泰兴镇,军屯镇,马家镇,新民镇,三河镇,石板滩",
    "四川-成都市-温江区": "乡,村,工业园,公平镇,涌泉镇,和盛镇,永宁镇,踏水镇,金马镇",
    "四川-成都市-金堂县": "乡,镇,村",
    "四川-成都市-双流县": "乡,村,龙桥社区,公兴镇,九江镇,邹家厂,彭镇,工业港,永安镇,黄水镇,籍田镇,白家镇,万安镇",
    "四川-成都市-郫县": "乡,村,团结镇,安德镇,唐昌镇,唐元镇,新胜镇,新民场镇,古城镇,三道堰镇,花园镇,两路口镇,友爱镇,清河镇,红兴镇,德源镇,合作镇,安靖镇",
    "四川-成都市-大邑县": "乡,镇,村",
    "四川-成都市-都江堰市": "乡,镇,村,水泥厂,青城山,东软",
    "四川-成都市-彭州市": "乡,镇,村",
    "四川-成都市-邛崃市": "乡,镇,村",
    "四川-成都市-崇州市": "乡,镇,村",
    "四川-自贡市-自流井区": "乡,镇,村,东广路,大唐山,沙鱼坝,张家坝",
    "四川-自贡市-贡井区": "乡,镇,村",
    "四川-自贡市-大安区": "农场,乡,镇,村,凉水井,大山铺",
    "四川-攀枝花市-东区": "乡,镇,村,五道河,铁矿,弄弄沟,工安,高峰路,团结路",
    "四川-攀枝花市-仁和区": "乡,镇,村",
    "四川-泸州市-江阳区": "乡,村,鱼滩镇,罗汉镇,蓝田镇",
    "四川-泸州市-纳溪区": "乡,镇,村",
    "四川-泸州市-叙永县": "乡,镇,村",
    "四川-德阳市-旌阳区": "乡,镇,村",
    "四川-德阳市-中江县": "乡,镇,村",
    "四川-德阳市-广汉市": "乡,镇,村,开发区,三星堆,航空飞行学院",
    "四川-德阳市-什邡市": "乡,镇,村",
    "四川-绵阳市-涪城区": "乡,镇,雪宝乳业,富邦电控,天旋气门,三江化工,九洲集团,美亚电站,利尔化工,长虹东元,鸿越瑞阁,管委会,飞行学院,机场,机场西路,御中路,村",
    "四川-绵阳市-游仙区": "乡,村,石马镇,小枧镇,沉抗镇",
    "四川-绵阳市-江油市": "乡,镇,村",
    "四川-广元市-利州区": "乡,镇,村,三堆,大石,回龙河,下西坝,人民医院,下西物流,昭化,卫子,雪峰,宝轮镇,盘龙镇",
    "四川-广元市-旺苍县": "乡,镇,村",
    "四川-广元市-苍溪县": "乡,镇,村",
    "四川-遂宁市-船山区": "乡,镇,村",
    "四川-遂宁市-蓬溪县": "乡,镇,村",
    "四川-遂宁市-射洪县": "乡,镇,村",
    "四川-内江市-市中区": "乡,镇,村",
    "四川-内江市-东兴区": "乡,镇,村",
    "四川-内江市-隆昌县": "乡,镇,村",
    "四川-乐山市-市中区": "乡,村,苏稽镇,安谷镇,车子镇,牟子镇,九峰乡,任家坝",
    "四川-乐山市-夹江县": "乡,镇,村",
    "四川-乐山市-沐川县": "乡,镇,村",
    "四川-乐山市-峨眉山市": "乡,镇,村,红珠山宾馆,交大",
    "四川-南充市-顺庆区": "乡,镇,村",
    "四川-南充市-高坪区": "乡,镇,村",
    "四川-南充市-嘉陵区": "乡,镇,村",
    "四川-眉山市-东坡区": "乡,镇,村,车辆厂",
    "四川-眉山市-仁寿县": "乡,镇,村",
    "四川-眉山市-彭山县": "乡,镇,村",
    "四川-宜宾市-翠屏区": "乡,镇,村,白沙湾,化工厂,沙坪镇,七九九厂,大麦坝,前进路,西客站,火车站",
    "四川-广安市-广安区": "乡,镇,村",
    "四川-广安市-岳池县": "乡,镇,村",
    "四川-广安市-武胜县": "乡,镇,村",
    "四川-广安市-邻水县": "乡,镇,村",
    "四川-广安市-华蓥市": "乡,镇,村",
    "四川-达州市-通川区": "乡,镇,村,高家坝,徐家坝,凤凰山",
    "四川-达州市-达县": "乡,镇,村",
    "四川-达州市-万源市": "乡,镇,村",
    "四川-雅安市-雨城区": "乡,镇,村",
    "四川-巴中市-巴州区": "乡,镇,村",
    "四川-巴中市-南江县": "乡,镇,村",
    "四川-巴中市-平昌县": "乡,镇,村",
    "四川-资阳市-雁江区": "工业园,乡,镇,村,清泉铺",
    "四川-资阳市-简阳市": "乡,镇,村",
    "四川-凉山州-西昌市": "乡,镇,村,西昌学院",
    "贵州-贵阳市-南明区": "乡,镇,村,宝福山",
    "贵州-贵阳市-云岩区": "镇,村,王家桥,永乐乡",
    "贵州-贵阳市-花溪区": "磊庄,羊艾农场,小碧乡,青岩镇,孟关乡,牛郎关",
    "贵州-贵阳市-乌当区": "水田乡,三江农场,络湾,乡纸沟,情人谷,罗史乡,阿栗乡,奶牛场,狗场镇,蒿枝塘,东林煤矿,朱昌镇,金华村",
    "贵州-贵阳市-白云区": "沙文乡,都拉营乡,尖山,尖坡乡,曹管乡,冷水乡,奔土乡,小河乡,麦架乡,麦格乡,百花湖,沙子哨,砂轮厂",
    "贵州-贵阳市-小河区": "乡,村,八公里,金竹镇",
    "贵州-贵阳市-开阳县": "乡,镇,村",
    "贵州-贵阳市-清镇市": "乡,镇,村",
    "贵州-六盘水市-钟山区": "乡,镇,村,水钢,德坞,开发区",
    "贵州-六盘水市-水城县": "乡,镇,村",
    "贵州-遵义市-红花岗区": "新蒲镇,董公寺,地质队,钛厂,龙坑镇,海龙镇,深溪镇,舟水桥,驾校",
    "贵州-遵义市-汇川区": "东联线,汇川大道,大坪,董公寺,海龙,田沟,南宫山",
    "贵州-遵义市-遵义县": "乡,镇,村",
    "贵州-遵义市-绥阳县": "乡,镇,村",
    "贵州-遵义市-湄潭县": "乡,镇,村",
    "贵州-遵义市-余庆县": "乡,镇,村",
    "贵州-遵义市-仁怀市": "乡,镇,村",
    "贵州-安顺市-西秀区": "岩蜡乡,宁谷镇,东屯乡,七眼桥镇,大西桥镇,新场乡,黄蜡乡,龙宫镇,双堡镇,白水镇,轿子山镇,刘官乡,旧州镇,蔡官镇",
    "贵州-安顺市-普定县": "乡,镇,村",
    "贵州-安顺市-关岭布依族苗族自治县": "乡,镇,村",
    "贵州-铜仁地区-铜仁市": "乡,镇,村,水泥厂,谢桥,党校,水晶阁,清水塘",
    "贵州-黔西南州-兴义市": "乡,镇,村",
    "贵州-毕节地区-毕节市": "头步桥,海子街,长春堡,朱昌,望城坡,水西大道,毕阳路,双狮路,双树路,东升路,新桥路,环东路,海子街,长春堡,头步桥,朱昌,毕节学院,化肥厂,复烤厂",
    "贵州-毕节地区-大方县": "乡,镇,村",
    "贵州-毕节地区-威宁彝族回族苗族自治县": "乡,镇,村",
    "贵州-黔东南州-凯里市": "乡,镇,村,开发区,高溪,发电厂,南丰厂,殡仪馆,凯旋厂,玻璃厂",
    "贵州-黔南州-都匀市": "乡,镇,村",
    "云南-昆明市-盘龙区": "清泉村,青龙山,麦地村,司家营,伍家村",
    "云南-昆明市-官渡区": "大板桥,阿拉乡,福保乡,归华寺,大石坝,跑马山,三甲,四甲,五甲,六甲,七甲",
    "云南-昆明市-西山区": "碧鸡镇,海口镇,大普吉,小普吉,团结乡,河尾办事处",
    "云南-曲靖市-麒麟区": "东山镇,珠街乡,三宝镇,马龙县,沾益县,富源县,罗平县,会泽县,陆良县,师宗县,越州镇,花山镇,马街,牛街,鸡街,狗街,盘江乡,驰宏",
    "云南-曲靖市-罗平县": "乡,镇,村",
    "云南-曲靖市-宣威市": "乡,镇,村",
    "云南-玉溪市-红塔区": "研和镇,春和镇,大营街镇,北城镇,李棋镇,洛河镇,康井路,高仓镇,腾宵路,冯井,汇溪路,水库",
    "云南-保山市-隆阳区": "乡,镇,村,沙河",
    "云南-昭通市-昭阳区": "乡,镇,村",
    "云南-丽江市-古城区": "乡,镇,村",
    "云南-丽江市-永胜县": "乡,镇,村",
    "云南-丽江市-华坪县": "乡,镇,村",
    "云南-丽江市-宁蒗彝族自治县": "乡,镇,村",
    "云南-楚雄州-楚雄市": "乡,镇,村",
    "云南-红河州-个旧市": "乡,镇,村",
    "云南-红河州-开远市": "乡,镇,村",
    "云南-红河州-蒙自县": "乡,镇,村",
    "云南-红河州-建水县": "乡,镇,村",
    "云南-文山州-文山县": "",
    "云南-普洱市-思茅区": "",
    "云南-西双版纳州-景洪市": "村,普文镇,大渡岗乡,景讷乡,勐养镇,基诺乡,勐罕镇,景哈乡,小街乡,大勐龙,东风镇,嘎洒镇",
    "云南-大理州-大理市": "村,凤仪镇",
    "云南-大理州-祥云县": "乡,镇,村",
    "云南-大理州-宾川县": "乡,镇,村",
    "云南-德宏州-瑞丽市": "乡,镇,村",
    "云南-德宏州-芒市": "乡,镇,村",
    "云南-怒江州-泸水县": "乡,镇,村",
    "云南-迪庆州-香格里拉县": "开发区,乡,镇,村",
    "云南-临沧市-临翔区": "村,圈内乡,蚂蚁堆乡,博尚镇,机场,南美拉祜族乡,多依乡,热水塘,邦东乡,马台乡,茶房乡",
    "西藏-拉萨市-城关区": "",
    "西藏-山南地区-乃东县": "乡,镇,村",
    "西藏-日喀则地区-日喀则市": "",
    "西藏-林芝地区-林芝县": "林芝镇,百巴镇,鲁朗镇,更章门巴族乡,布久乡,米瑞乡",
    "陕西-西安市-新城区": "乡,镇,村",
    "陕西-西安市-碑林区": "乡,镇,村",
    "陕西-西安市-莲湖区": "乡,镇,村",
    "陕西-西安市-灞桥区": "乡,镇,村,思源学院,交大,财经学院,海棠学院,狄寨路,半引公路,穆蒋王村,电厂,电厂东路,电厂西路,席王路",
    "陕西-西安市-未央区": "乡,镇,村,尚稷路,草滩路,草滩十一路,罗高路,尚苑路,阳光大道,未央校区,未央湖,湖东路,建设路,向上路,湖滨路,王公路,西宝疏导路",
    "陕西-西安市-雁塔区": "乡,镇,村",
    "陕西-西安市-阎良区": "乡,村,武屯镇,关山镇",
    "陕西-西安市-临潼区": "乡,村,马额镇",
    "陕西-西安市-长安区": "乡,镇,村,少陵路,沣峪口,陆军学院,翻译学院,通讯学院,工业大学,明德校区,星天苑,西北大学,体育学校,斗门镇,王寺镇,三资学院,西沣公路",
    "陕西-西安市-周至县": "乡,镇,村,南环路,北环路",
    "陕西-西安市-户县": "村,大王镇,渭丰乡,涝店镇,甘河镇,蒋村镇,石井镇,涝峪乡,庞光乡,草堂镇,秦渡镇,五竹乡,仓游乡,玉婵乡,天桥乡,白庙乡,恒安公司,球场",
    "陕西-西安市-高陵县": "村,通远镇,药惠乡,崇皇乡,张卜乡,湾子乡,余楚乡,耿镇,姬家乡",
    "陕西-铜川市-王益区": "乡,镇,村",
    "陕西-铜川市-印台区": "乡,镇,村",
    "陕西-铜川市-耀州区": "乡,镇,村",
    "陕西-宝鸡市-渭滨区": "乡,镇,村",
    "陕西-宝鸡市-金台区": "乡,镇,村",
    "陕西-宝鸡市-陈仓区": "乡,镇,村",
    "陕西-宝鸡市-眉县": "乡,镇,村",
    "陕西-咸阳市-秦都区": "乡,镇,村",
    "陕西-咸阳市-渭城区": "乡,镇,村",
    "陕西-咸阳市-三原县": "乡,镇,村",
    "陕西-咸阳市-泾阳县": "乡,镇,村",
    "陕西-咸阳市-淳化县": "乡,镇,村",
    "陕西-咸阳市-兴平市": "乡,镇,村",
    "陕西-渭南市-临渭区": "乡,镇,村",
    "陕西-渭南市-华县": "乡,镇,村",
    "陕西-渭南市-大荔县": "乡,镇,村",
    "陕西-渭南市-蒲城县": "乡,镇,村",
    "陕西-渭南市-白水县": "乡,镇,村",
    "陕西-渭南市-富平县": "乡,镇,村",
    "陕西-渭南市-韩城市": "乡,镇,村",
    "陕西-渭南市-华阴市": "乡,镇,村",
    "陕西-延安市-宝塔区": "乡,镇,桥沟村,王良寺,机场,枣园村,延园中学,大砭沟,第二高级中学,南三十里铺,南柳树港,万花,第四中学,姚店,卷烟厂,姚店新区,李渠,药业,川口,漠家湾,小砭沟,黄蒿湾,园丁小区,红花小区",
    "陕西-延安市-甘泉县": "乡,镇,村",
    "陕西-延安市-洛川县": "乡,镇,村",
    "陕西-汉中市-汉台区": "",
    "陕西-汉中市-南郑县": "乡,镇,村",
    "陕西-汉中市-洋县": "乡,镇,村",
    "陕西-汉中市-西乡县": "乡,镇,村",
    "陕西-榆林市-榆阳区": "乡,镇,村",
    "陕西-榆林市-府谷县": "乡,镇,村",
    "陕西-榆林市-横山县": "乡,镇,村",
    "陕西-榆林市-靖边县": "乡,村,红墩界镇,黄蒿界,海则滩,杨桥畔镇,高家沟,龙洲,乔沟湾,小河,青阳岔镇,天赐湾,镇靖,杨米涧,大路沟,周河镇,五里湾,东坑镇,宁条梁镇,王渠则镇,席麻湾,中山涧镇,新城",
    "陕西-榆林市-定边县": "乡,镇,村",
    "陕西-榆林市-绥德县": "乡,镇,村,崔家湾,白家硷,吉镇,辛店,裴家峁,四十里铺,麻地沟,黄家沟,二中",
    "陕西-安康市-汉滨区": "乡,镇,村",
    "陕西-商洛市-商州区": "乡,村,金陵寺镇,杨峪河镇,黑龙口镇,红门河乡,野村镇,大荆镇,西京乡,张村镇,沙河子镇,板桥镇,东龙山",
    "陕西-商洛市-丹凤县": "乡,镇,村",
    "陕西-商洛市-山阳县": "乡,镇,村",
    "陕西-商洛市-镇安县": "乡,镇,村",
    "甘肃-兰州市-城关区": "乡,镇,村,窦家山,古城坪,桃树坪,兰山公园,枣林路,青白石,伏龙坪后街,伏龙坪中街",
    "甘肃-兰州市-七里河区": "乡,镇,村,阿甘镇,蒋家坪,兰州鸡场,崔家大滩,西果园镇,三叉路口,八里窑,韩家河,彭家坪",
    "甘肃-兰州市-西固区": "乡,镇,村,471厂,504厂,新冶路,新维路,302厂,化肥厂,环行路,范家坪,钟家河,热电公司,河口",
    "甘肃-兰州市-安宁区": "乡,镇,村,沙井驿,李家坪,刘沙公路,仁寿山,红艺村,元台子,职业技术学院",
    "甘肃-兰州市-永登县": "乡,村,铝厂,水泥厂,电厂,合金厂,中川镇,城关镇",
    "甘肃-金昌市-金川区": "乡,镇,村,河雅公路,选矿厂,化工厂,冶炼厂,亚硫厂,制品厂,总揽厂,纸制品厂,十九公里,变电所,马家崖子,永昌县,河西堡",
    "甘肃-白银市-白银区": "乡,镇,村",
    "甘肃-武威市-凉州区": "乡,镇,村",
    "甘肃-张掖市-甘州区": "乡,镇,村",
    "甘肃-平凉市-崆峒区": "乡,镇,村,十里铺,二十里铺,四十里铺,白水镇,安国镇,寨子街,峡门乡,电厂,水泥厂",
    "甘肃-酒泉市-肃州区": "乡,镇,村",
    "甘肃-酒泉市-敦煌市": "乡,镇,村,东月公路,红当路,机场,莫高窟,月牙泉",
    "甘肃-庆阳市-西峰区": "乡,镇,村",
    "甘肃-定西市-安定区": "乡,镇,村,凤安路,福台村,友谊村,洋芋市场,纸箱厂,镇龙路",
    "甘肃-陇南市-武都区": "乡,村,两水镇,马街,安化镇,汉王镇",
    "甘肃-临夏州-临夏市": "乡,镇,村",
    "甘肃-甘南州-合作市": "乡,镇,村",
    "青海-西宁市-城东区": "曹家堡,乡,镇,村",
    "青海-西宁市-城西区": "大堡子,乡,镇,村",
    "青海-西宁市-城北区": "青海大学,乡,镇,村",
    "青海-海东地区-平安县": "乡,镇,村",
    "青海-海西州-格尔木市": "黄河东路,练油厂,东海路,南海路,监狱,园艺厂,盐桥北路,武警三支队,机场路,飞机场,基地,郭乡,部队,乡,镇,村",
    "宁夏-银川市-兴庆区": "丰登镇,西新乡,新联乡,掌政乡,通贵乡,大新镇,苗木场,医学院,银川大学,宁化,部队,兴泾镇,望远镇,宁东镇,中心区,王太,工业园,阅海宾馆,村",
    "宁夏-银川市-西夏区": "平吉堡,吊庄,场,芦花镇,兴庆镇,村,乡",
    "宁夏-银川市-金凤区": "乡,镇,村",
    "宁夏-银川市-贺兰县": "乡,镇,村",
    "宁夏-银川市-灵武市": "乡,镇,村",
    "宁夏-石嘴山市-大武口区": "站,开发区,厂,石炭井,农指,电厂,一棵树,沟口,汝芨沟,大峰矿,平罗县,白芨沟,乡,镇,村",
    "宁夏-石嘴山市-惠农区": "工业园,惠农县,静安区,西河桥,石大路,火车站,钢厂,电厂,焦化厂,二十三小,钢电路,开发区,钢电路,金能煤业,园艺镇,二矿,一矿,乡,镇,村",
    "宁夏-石嘴山市-平罗县": "乡,镇,村",
    "宁夏-吴忠市-利通区": "乡,镇,村",
    "宁夏-吴忠市-盐池县": "八堡,沟沿村,冯记圈.大水坑,生态游乐城,村,乡,镇",
    "宁夏-吴忠市-同心县": "乡,镇,村",
    "宁夏-吴忠市-青铜峡市": "大坝,电厂,铝厂,莲湖农厂,乡,镇,村",
    "宁夏-固原市-原州区": "工业园,固原回中,师范学院,乡,镇,村",
    "宁夏-固原市-西吉县": "乡,镇,村",
    "宁夏-中卫市-沙坡头区": "镇罗镇,东园镇,柔远乡,永康乡,宣和,迎水桥,部队,常乐镇,香山镇,工业园,美利纸业,头景区,发电厂,假日酒店,村",
    "宁夏-中卫市-中宁县": "乡,镇,村",
    "宁夏-中卫市-海原县": "乡,镇,村",
    "新疆-乌鲁木齐市-天山区": "明华街,延安路,电厂,碱泉一街,碱泉路,新华南路,燕尔窝路,水泥厂,十七户路,烈士陵园,化肥厂,管理处,停车厂,总站,新大南校,种牛厂,监狱,乡,镇,村,团,场",
    "新疆-克拉玛依市-独山子区": "发展厂,217国道,无纺布厂,乡,镇,村,团,场",
    "新疆-克拉玛依市-克拉玛依区": "西环路,准格尔路,飞机场,石化厂,小拐,采油三厂,乌尔禾区,三坪镇,大农业,油泉路,工业园,乡,镇,村,团,场",
    "新疆-吐鲁番地区-吐鲁番市": "红星路,新城路,乡,镇,村,团,场",
    "新疆-哈密地区-哈密市": "巴里坤县,伊吾县,雅满苏镇,矿区,七角井镇,星星峡镇,二堡镇,沁城乡,乌拉台哈萨克族乡,双井子乡,大泉湾乡,陶家宫乡,花园乡,南湖乡,五堡乡,哈萨克族乡,西山乡,天山乡,白石头乡,城郊乡,柳树沟乡,园林场,场,团,开发区",
    "新疆-昌吉州-昌吉市": "乡,镇,村,团,场",
    "新疆-博尔塔拉州-博乐市": "乡,镇,村,团,场",
    "新疆-巴音郭楞州-库尔勒市": "塔什店,501,504,上户镇,兰干乡,包头湖,火车西站,大二线,西尼尔镇,水电厂,天山西路,库尔楚,农场,哈拉玉宫乡,阿瓦提乡,团,场,军事基地信箱,泰昌纺织,乡,镇,村,团,场",
    "新疆-巴音郭楞州-轮台县": "乡,镇,村,团,场",
    "新疆-巴音郭楞州-博湖县": "乡,镇,村,团,场",
    "新疆-阿克苏地区-阿克苏市": "乡,镇,村,团,场",
    "新疆-阿克苏地区-库车县": "塔里木运输公司,开发区,人民路,天山路,乡,镇,村",
    "新疆-克孜勒苏州-阿图什市": "乡,镇,村,团,场",
    "新疆-喀什地区-喀什市": "荒地乡,西域大道,世纪大道,八里桥,乡,镇,村,团,场",
    "新疆-伊犁州-伊宁市": "乡,镇,村,团,场",
    "新疆-伊犁州-奎屯市": "乡,镇,村,团,场",
    "新疆-塔城地区-乌苏市": "乌伊公路,北京东路乡,镇,村,团,场",
    "新疆-阿勒泰地区-阿勒泰市": "乡,镇,村,团,场"
};
var g_sto_map = {
    "北京-北京市-东城区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-西城区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-朝阳区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-丰台区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-石景山区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-海淀区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-门头沟区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-房山区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-通州区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-顺义区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-昌平区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-大兴区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-怀柔区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-平谷区": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-密云县": "国务院,检察院,公安部,商务部,法院",
    "北京-北京市-延庆县": "国务院,检察院,公安部,商务部,法院",
    "天津-天津市-和平区": "乡,镇,村",
    "天津-天津市-河东区": "乡,镇,村",
    "天津-天津市-河西区": "乡,镇,村",
    "天津-天津市-南开区": "乡,镇,村",
    "天津-天津市-河北区": "乡,镇,村",
    "天津-天津市-红桥区": "乡,镇,村",
    "天津-天津市-东丽区": "乡,镇,村",
    "天津-天津市-西青区": "乡,镇,村",
    "天津-天津市-津南区": "乡,镇,村",
    "天津-天津市-北辰区": "乡,镇,村",
    "天津-天津市-武清区": "乡,镇,村",
    "天津-天津市-宝坻区": "乡,镇,村",
    "天津-天津市-滨海新区": "乡,镇,村",
    "天津-天津市-宁河县": "乡,镇,村",
    "天津-天津市-静海县": "乡,镇,村",
    "天津-天津市-蓟县": "乡,镇,村",
    "河北-石家庄市-长安区": "仓丰路,石获路,石清路",
    "河北-石家庄市-桥东区": "仓丰路,石获路,石清路",
    "河北-石家庄市-桥西区": "仓丰路,石获路,石清路",
    "河北-石家庄市-新华区": "仓丰路,石获路,石清路",
    "河北-石家庄市-井陉矿区": "仓丰路,石获路,石清路",
    "河北-石家庄市-裕华区": "仓丰路,石获路,石清路",
    "河北-石家庄市-井陉县": "乡,镇,村",
    "河北-石家庄市-栾城县": "乡,镇,村",
    "河北-石家庄市-行唐县": "乡,镇,村",
    "河北-石家庄市-灵寿县": "塔上镇,陈庄镇,岔头镇,南寨乡,寨头乡,南营乡,村",
    "河北-石家庄市-高邑县": "乡,镇,村",
    "河北-石家庄市-赞皇县": "乡,镇,村",
    "河北-石家庄市-无极县": "乡,镇,村",
    "河北-石家庄市-平山县": "乡,镇,村",
    "河北-石家庄市-元氏县": "乡,镇,村",
    "河北-石家庄市-赵县": "乡,镇,村",
    "河北-石家庄市-辛集市": "乡,镇,村",
    "河北-石家庄市-藁城市": "乡,镇,村",
    "河北-石家庄市-晋州市": "乡,镇,村",
    "河北-石家庄市-新乐市": "乡,镇,村",
    "河北-石家庄市-鹿泉市": "李村镇,宜安镇,寺家庄镇,乡,村",
    "河北-唐山市-路南区": "乡,镇,村",
    "河北-唐山市-路北区": "乡,镇,村",
    "河北-唐山市-古冶区": "乡,镇,村",
    "河北-唐山市-开平区": "乡,镇,村",
    "河北-唐山市-丰南区": "乡,镇,村",
    "河北-唐山市-丰润区": "乡,镇,村",
    "河北-唐山市-滦县": "乡,镇,村",
    "河北-唐山市-滦南县": "乡,镇,村",
    "河北-唐山市-乐亭县": "乡,镇,村",
    "河北-唐山市-迁西县": "乡,镇,村",
    "河北-唐山市-玉田县": "乡,镇,村",
    "河北-唐山市-唐海县": "乡,镇,村",
    "河北-唐山市-遵化市": "乡,镇,村",
    "河北-唐山市-迁安市": "乡,镇,村",
    "河北-秦皇岛市-海港区": "乡,镇,村",
    "河北-秦皇岛市-山海关区": "乡,镇,村",
    "河北-秦皇岛市-北戴河区": "乡,镇,村",
    "河北-秦皇岛市-经济技术开发区": "乡,镇,村",
    "河北-秦皇岛市-昌黎县": "乡,镇,村",
    "河北-秦皇岛市-抚宁县": "乡,镇,村",
    "河北-邯郸市-邯山区": "马头镇",
    "河北-邯郸市-丛台区": "黄梁梦镇",
    "河北-邯郸市-复兴区": "",
    "河北-邯郸市-峰峰矿区": "乡,镇,村",
    "河北-邯郸市-邯郸县": "乡,镇,村",
    "河北-邯郸市-临漳县": "乡,镇,村",
    "河北-邯郸市-成安县": "乡,镇,村",
    "河北-邯郸市-磁县": "乡,镇,村",
    "河北-邢台市-任县": "乡,镇,村",
    "河北-邢台市-南和县": "乡,镇,村",
    "河北-邢台市-巨鹿县": "乡,镇,村",
    "河北-邢台市-清河县": "寻寨镇,白神首乡,荆家庄乡,西流乡,仁让里乡,村",
    "河北-邢台市-临西县": "乡,镇,村",
    "河北-邢台市-桥东区": "乡,镇,村",
    "河北-邢台市-南宫市": "苏村镇,大高村镇,明化镇,紫冢镇,大村乡,南便村乡,大屯乡,王道寨乡,薛吴村乡,村",
    "河北-保定市-新市区": "乡,镇,村",
    "河北-保定市-北市区": "乡,镇,村",
    "河北-保定市-南市区": "乡,镇,村",
    "河北-保定市-高开区": "乡,镇,村",
    "河北-保定市-满城县": "乡,镇,村",
    "河北-保定市-清苑县": "乡,镇,村",
    "河北-保定市-徐水县": "乡,镇,村",
    "河北-保定市-定兴县": "乡,镇,村",
    "河北-保定市-唐县": "乡,镇,村",
    "河北-保定市-高阳县": "乡,镇,村",
    "河北-保定市-安新县": "乡,镇,村",
    "河北-保定市-易县": "乡,镇,村",
    "河北-保定市-蠡县": "乡,镇,村",
    "河北-保定市-顺平县": "乡,镇,村",
    "河北-保定市-博野县": "乡,镇,村",
    "河北-保定市-雄县": "乡,镇,村",
    "河北-保定市-涿州市": "码头镇,高官庄镇,百尺竿乡,义合庄乡,林家屯乡,孙庄乡,豆庄乡,刁窝乡,村",
    "河北-保定市-定州市": "乡,镇,村",
    "河北-保定市-安国市": "乡,镇,村",
    "河北-保定市-高碑店市": "乡,镇,村",
    "河北-张家口市-桥东区": "乡,镇,村",
    "河北-张家口市-桥西区": "乡,镇,村",
    "河北-张家口市-宣化区": "乡,镇,村",
    "河北-承德市-双桥区": "",
    "河北-承德市-双滦区": "滦河镇,大庙镇,偏桥子镇,陈栅子乡,村",
    "河北-承德市-承德县": "乡,镇,村",
    "河北-承德市-平泉县": "乡,镇,村",
    "河北-沧州市-新华区": "乡,镇,村",
    "河北-沧州市-运河区": "乡,镇,村",
    "河北-沧州市-沧县": "乡,镇,村",
    "河北-沧州市-青县": "乡,镇,村",
    "河北-沧州市-东光县": "乡,镇,村",
    "河北-沧州市-海兴县": "乡,镇,村",
    "河北-沧州市-盐山县": "乡,镇,村",
    "河北-沧州市-肃宁县": "乡,镇,村",
    "河北-沧州市-南皮县": "寨子镇,鲍官屯镇,王寺镇,乌马营镇,大浪淀乡,刘八里乡,潞灌乡,村",
    "河北-沧州市-吴桥县": "乡,镇,村",
    "河北-沧州市-献县": "韩村乡,陌南乡,高官乡,段村乡,张村乡,临河乡,小平王乡,十五级乡,垒头乡,西城乡,本斋回族乡,村",
    "河北-沧州市-孟村回族自治县": "乡,镇,村",
    "河北-沧州市-泊头市": "乡,镇,村",
    "河北-沧州市-任丘市": "出岸镇,堡镇,长丰镇,莫阝州镇,苟各庄镇,梁召镇,辛中驿镇,议论堡乡,青塔乡,北辛庄乡,七间房乡,于村乡,麻家坞乡,村",
    "河北-沧州市-黄骅市": "黄骅港,临港开发区,乡,镇,村",
    "河北-廊坊市-安次区": "",
    "河北-廊坊市-广阳区": "",
    "河北-廊坊市-经济技术开发区": "",
    "河北-廊坊市-固安县": "乡,镇,村",
    "河北-廊坊市-永清县": "乡,镇,村",
    "河北-廊坊市-香河县": "乡,镇,村",
    "河北-廊坊市-大城县": "乡,镇,村",
    "河北-廊坊市-文安县": "乡,镇,村",
    "河北-廊坊市-霸州市": "乡,镇,村",
    "河北-衡水市-桃城区": "乡,镇,村",
    "河北-衡水市-枣强县": "乡,镇,村",
    "河北-衡水市-故城县": "军屯,建国,武官寨,乡,镇,村",
    "河北-衡水市-景县": "乡,镇,村",
    "河北-衡水市-冀州市": "乡,镇,村",
    "山西-太原市-小店区": "煤矿,乡,镇,村",
    "山西-太原市-迎泽区": "煤矿,乡,镇,村",
    "山西-太原市-杏花岭区": "煤矿,乡,镇,村",
    "山西-太原市-尖草坪区": "煤矿,乡,镇,村",
    "山西-太原市-万柏林区": "煤矿,乡,镇,村",
    "山西-太原市-晋源区": "煤矿,乡,镇,村",
    "山西-太原市-清徐县": "乡,镇,村",
    "山西-大同市-城区": "乡,镇,村",
    "山西-大同市-矿区": "乡,镇,村",
    "山西-大同市-南郊区": "乡,镇,村",
    "山西-大同市-新荣区": "乡,镇,村",
    "山西-大同市-阳高县": "乡,镇,村",
    "山西-大同市-浑源县": "乡,镇,村",
    "山西-阳泉市-城区": "乡,镇,村",
    "山西-阳泉市-矿区": "乡,镇,村",
    "山西-长治市-城区": "乡,镇,村,惠丰街,清华街,淮海街",
    "山西-长治市-高新区": "乡,镇,村,惠丰街,清华街,淮海街",
    "山西-长治市-襄垣县": "乡,镇,村",
    "山西-晋城市-城区": "乡,镇,村",
    "山西-晋城市-高平市": "乡,镇,村",
    "山西-朔州市-朔城区": "乡,镇,村",
    "山西-朔州市-平鲁区": "乡,镇,村",
    "山西-晋中市-榆次区": "乡,镇,村",
    "山西-晋中市-太谷县": "乡,镇,村",
    "山西-晋中市-祁县": "乡,镇,村",
    "山西-晋中市-平遥县": "乡,镇,村",
    "山西-运城市-盐湖区": "乡,镇,村",
    "山西-运城市-临猗县": "乡,镇,村",
    "山西-运城市-万荣县": "乡,镇,村",
    "山西-运城市-闻喜县": "乡,镇,村",
    "山西-运城市-稷山县": "乡,镇,村",
    "山西-运城市-新绛县": "乡,镇,村",
    "山西-运城市-垣曲县": "乡,镇,村",
    "山西-运城市-夏县": "乡,镇,村",
    "山西-运城市-平陆县": "乡,镇,村",
    "山西-运城市-芮城县": "乡,镇,村",
    "山西-运城市-永济市": "乡,镇,村",
    "山西-运城市-河津市": "乡,镇,村",
    "山西-忻州市-忻府区": "乡,镇,村",
    "山西-忻州市-定襄县": "乡,镇,村",
    "山西-忻州市-五台县": "乡,镇,村",
    "山西-忻州市-繁峙县": "乡,镇,村",
    "山西-忻州市-原平市": "乡,镇,村",
    "山西-临汾市-尧都区": "乡,镇,村",
    "山西-临汾市-翼城县": "乡,镇,村",
    "山西-临汾市-侯马市": "乡,镇,村",
    "山西-吕梁地区-离石区": "乡,镇,村",
    "山西-吕梁地区-孝义市": "乡,镇,村",
    "山西-吕梁地区-文水县": "乡,镇,村",
    "山西-吕梁地区-交城县": "乡,镇,村",
    "内蒙古-包头市-昆都仑区": "乡,镇,村,张家营子",
    "内蒙古-包头市-青山区": "乡,镇,村",
    "内蒙古-乌海市-海勃湾区": "乡,镇,村",
    "内蒙古-赤峰市-红山区": "乡,镇,村,张家营子",
    "内蒙古-赤峰市-松山区": "乡,镇,村,张家营子",
    "内蒙古-赤峰市-阿鲁科尔沁旗": "乡,镇,村,张家营子",
    "内蒙古-赤峰市-喀喇沁旗": "乡,镇,村,张家营子",
    "内蒙古-呼伦贝尔市-海拉尔区": "乡,镇,村",
    "内蒙古-呼伦贝尔市-满洲里市": "乡,镇,村",
    "内蒙古-兴安盟-乌兰浩特市": "乡,镇,村",
    "内蒙古-兴安盟-科尔沁右翼前旗": "乡,镇,村",
    "内蒙古-兴安盟-科尔沁右翼中旗": "乡,镇,村",
    "内蒙古-兴安盟-扎赉特旗": "乡,镇,村",
    "内蒙古-锡林郭勒盟-锡林浩特市": "乡,镇,村",
    "内蒙古-乌兰察布市-集宁区": "乡,镇,村",
    "辽宁-沈阳市-和平区": "",
    "辽宁-沈阳市-沈河区": "",
    "辽宁-沈阳市-大东区": "",
    "辽宁-沈阳市-皇姑区": "",
    "辽宁-沈阳市-铁西区": "",
    "辽宁-沈阳市-苏家屯区": "",
    "辽宁-沈阳市-东陵区": "",
    "辽宁-沈阳市-沈北新区": "",
    "辽宁-沈阳市-于洪区": "",
    "辽宁-沈阳市-新城子区": "",
    "辽宁-沈阳市-浑南新区": "",
    "辽宁-沈阳市-张士开发区": "",
    "辽宁-沈阳市-辽中县": "乡,镇,村",
    "辽宁-沈阳市-康平县": "乡,镇,村",
    "辽宁-沈阳市-法库县": "乡,镇,村",
    "辽宁-沈阳市-新民市": "乡,镇,村",
    "辽宁-大连市-中山区": "",
    "辽宁-大连市-西岗区": "",
    "辽宁-大连市-沙河口区": "",
    "辽宁-大连市-甘井子区": "",
    "辽宁-大连市-旅顺口区": "",
    "辽宁-大连市-金州区": "",
    "辽宁-大连市-开发区": "",
    "辽宁-大连市-瓦房店市": "乡,镇,村",
    "辽宁-大连市-普兰店市": "乡,镇,村",
    "辽宁-大连市-庄河市": "乡,镇,村",
    "辽宁-鞍山市-铁东区": "乡,镇,村,大孤山镇,宁远镇,七岭子,汤岗子,解家堡,齐大山,陈家台子,达道湾,唐家房",
    "辽宁-鞍山市-铁西区": "乡,镇,村,大孤山镇,宁远镇,七岭子,汤岗子,解家堡,齐大山,陈家台子,达道湾,唐家房",
    "辽宁-鞍山市-立山区": "灵山村,红旗路,公园园区",
    "辽宁-鞍山市-千山区": "乡,镇,村,大孤山镇,宁远镇,七岭子,汤岗子,解家堡,齐大山,陈家台子,达道湾,唐家房",
    "辽宁-鞍山市-高新区": "乡,镇,村,大孤山镇,宁远镇,七岭子,汤岗子,解家堡,齐大山,陈家台子,达道湾,唐家房",
    "辽宁-鞍山市-台安县": "乡,镇,村",
    "辽宁-鞍山市-岫岩满族自治县": "乡,镇,村",
    "辽宁-鞍山市-海城市": "乡,镇,村",
    "辽宁-抚顺市-新抚区": "乡,镇,村",
    "辽宁-抚顺市-东洲区": "乡,镇,村",
    "辽宁-抚顺市-望花区": "乡,镇,村",
    "辽宁-抚顺市-顺城区": "乡,镇,村",
    "辽宁-抚顺市-新宾满族自治县": "乡,镇,村",
    "辽宁-抚顺市-清原满族自治县": "乡,镇,村",
    "辽宁-本溪市-平山区": "乡,镇,村",
    "辽宁-本溪市-溪湖区": "乡,镇,村",
    "辽宁-本溪市-明山区": "乡,镇,村",
    "辽宁-本溪市-本溪满族自治县": "乡,镇,村",
    "辽宁-本溪市-桓仁满族自治县": "乡,镇,村",
    "辽宁-丹东市-元宝区": "武营村,太平湾,大孤山,果园村,北井子镇,通远堡特区",
    "辽宁-丹东市-振兴区": "武营村,太平湾,大孤山,果园村,北井子镇,通远堡特区",
    "辽宁-丹东市-振安区": "武营村,太平湾,大孤山,果园村,北井子镇,通远堡特区",
    "辽宁-丹东市-宽甸满族自治县": "乡,镇,村",
    "辽宁-锦州市-古塔区": "乡,镇,村",
    "辽宁-锦州市-凌河区": "乡,镇,村",
    "辽宁-锦州市-太和区": "乡,镇,村",
    "辽宁-锦州市-开发区": "乡,镇,村",
    "辽宁-锦州市-黑山县": "乡,镇,村",
    "辽宁-锦州市-凌海市": "乡,镇,村",
    "辽宁-锦州市-北宁市": "乡,镇,村",
    "辽宁-营口市-站前区": "乡,镇,村",
    "辽宁-营口市-西市区": "乡,镇,村",
    "辽宁-营口市-鲅鱼圈区": "乡,镇,村",
    "辽宁-营口市-盖州市": "乡,镇,村",
    "辽宁-营口市-大石桥市": "乡,镇,村",
    "辽宁-阜新市-海州区": "乡,镇,村",
    "辽宁-阜新市-细河区": "乡,镇,村",
    "辽宁-辽阳市-白塔区": "乡,镇,村",
    "辽宁-辽阳市-文圣区": "乡,镇,村",
    "辽宁-辽阳市-宏伟区": "乡,镇,村",
    "辽宁-辽阳市-太子河区": "乡,镇,村",
    "辽宁-辽阳市-灯塔市": "乡,镇,村",
    "辽宁-盘锦市-双台子区": "乡,镇,村",
    "辽宁-盘锦市-兴隆台区": "乡,镇,村",
    "辽宁-盘锦市-大洼县": "乡,镇,村",
    "辽宁-铁岭市-银州区": "乡,镇,村",
    "辽宁-铁岭市-清河区": "乡,镇,村",
    "辽宁-铁岭市-铁岭县": "乡,镇,村",
    "辽宁-朝阳市-双塔区": "乡,镇,村",
    "辽宁-朝阳市-龙城区": "乡,镇,村",
    "辽宁-朝阳市-建平县": "乡,镇,村",
    "辽宁-朝阳市-北票市": "乡,镇,村",
    "辽宁-朝阳市-凌源市": "乡,镇,村",
    "辽宁-葫芦岛市-连山区": "乡,镇,村,岛里,北港",
    "辽宁-葫芦岛市-龙港区": "乡,镇,村,岛里,北港",
    "辽宁-葫芦岛市-绥中县": "乡,镇,村",
    "辽宁-葫芦岛市-兴城市": "乡,镇,村",
    "吉林-长春市-南关区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-宽城区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-朝阳区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-二道区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-绿园区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-双阳区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-高薪技术产业开发区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-汽车产业开发区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-经济技术开发区": "新立城镇,,街道,乡,村,屯",
    "吉林-长春市-净月旅游开发区": "新立城镇,,街道,乡,村,屯",
    "吉林-吉林市-昌邑区": "乡,镇,村",
    "吉林-吉林市-龙潭区": "乡,镇,村",
    "吉林-吉林市-船营区": "乡,镇,村",
    "吉林-吉林市-丰满区": "乡,镇,村",
    "吉林-吉林市-蛟河市": "乡,镇,村",
    "吉林-吉林市-桦甸市": "乡,镇,村",
    "吉林-吉林市-磐石市": "乡,镇,村",
    "吉林-四平市-铁西区": "乡,镇,村",
    "吉林-四平市-铁东区": "乡,镇,村",
    "吉林-四平市-梨树县": "乡,镇,村",
    "吉林-四平市-公主岭市": "乡,镇,村",
    "吉林-四平市-双辽市": "乡,镇,村",
    "吉林-辽源市-龙山区": "乡,镇,村",
    "吉林-辽源市-西安区": "乡,镇,村",
    "吉林-辽源市-东丰县": "乡,镇,村",
    "吉林-通化市-东昌区": "乡,镇,村",
    "吉林-通化市-二道江区": "乡,镇,村",
    "吉林-通化市-通化县": "乡,镇,村",
    "吉林-通化市-辉南县": "乡,镇,村",
    "吉林-通化市-柳河县": "乡,镇,村",
    "吉林-通化市-梅河口市": "乡,镇,村",
    "吉林-通化市-集安市": "乡,镇,村",
    "吉林-白山市-八道江区": "乡,镇,村",
    "吉林-白山市-江源区": "乡,镇,村",
    "吉林-白山市-抚松县": "乡,镇,村",
    "吉林-白山市-靖宇县": "乡,镇,村",
    "吉林-白山市-长白朝鲜族自治县": "乡,镇,村",
    "吉林-白山市-临江市": "乡,镇,村",
    "吉林-松原市-宁江区": "乡,镇,村",
    "吉林-松原市-前郭尔罗斯蒙古族自治县": "乡,镇,村",
    "吉林-松原市-长岭县": "乡,镇,村",
    "吉林-白城市-洮北区": "乡,镇,村",
    "吉林-白城市-镇赉县": "",
    "吉林-白城市-通榆县": "",
    "吉林-白城市-洮南市": "",
    "吉林-延边州-延吉市": "乡,镇,村",
    "吉林-延边州-图们市": "乡,镇,村",
    "吉林-延边州-敦化市": "乡,镇,村",
    "吉林-延边州-珲春市": "乡,镇,村",
    "吉林-延边州-龙井市": "乡,镇,村",
    "吉林-延边州-和龙市": "乡,镇,村",
    "吉林-延边州-汪清县": "乡,镇,村",
    "吉林-延边州-安图县": "乡,镇,村",
    "黑龙江-哈尔滨市-道里区": "乡,镇,村",
    "黑龙江-哈尔滨市-南岗区": "乡,镇,村",
    "黑龙江-哈尔滨市-道外区": "乡,镇,村",
    "黑龙江-哈尔滨市-香坊区": "乡,镇,村",
    "黑龙江-哈尔滨市-平房区": "乡,镇,村",
    "黑龙江-哈尔滨市-松北区": "乡,镇,村",
    "黑龙江-哈尔滨市-呼兰区": "乡,镇,村",
    "黑龙江-哈尔滨市-阿城区": "乡,镇,村",
    "黑龙江-哈尔滨市-方正县": "乡,镇,村",
    "黑龙江-哈尔滨市-宾县": "乡,镇,村",
    "黑龙江-哈尔滨市-延寿县": "乡,镇,村",
    "黑龙江-哈尔滨市-双城市": "乡,镇,村",
    "黑龙江-哈尔滨市-尚志市": "乡,镇,村",
    "黑龙江-齐齐哈尔市-龙沙区": "乡,镇,村,屯",
    "黑龙江-齐齐哈尔市-建华区": "乡,镇,村,屯",
    "黑龙江-齐齐哈尔市-铁锋区": "乡,镇,村,屯",
    "黑龙江-齐齐哈尔市-富拉尔基区": "乡,镇,村,屯",
    "黑龙江-鸡西市-鸡冠区": "乡,镇,村",
    "黑龙江-鸡西市-恒山区": "乡,镇,村",
    "黑龙江-鸡西市-滴道区": "乡,镇,村",
    "黑龙江-鸡西市-梨树区": "乡,镇,村",
    "黑龙江-鸡西市-城子河区": "乡,镇,村",
    "黑龙江-鸡西市-麻山区": "乡,镇,村",
    "黑龙江-鸡西市-密山市": "乡,镇,村,屯,农场",
    "黑龙江-鹤岗市-向阳区": "宝泉岭管局,军川农场,二九农场,名山,乡,镇,村",
    "黑龙江-鹤岗市-工农区": "宝泉岭管局,军川农场,二九农场,名山,乡,镇,村",
    "黑龙江-鹤岗市-南山区": "宝泉岭管局,军川农场,二九农场,名山,乡,镇,村",
    "黑龙江-鹤岗市-兴安区": "宝泉岭管局,军川农场,二九农场,名山,乡,镇,村",
    "黑龙江-鹤岗市-东山区": "宝泉岭管局,军川农场,二九农场,名山,乡,镇,村",
    "黑龙江-鹤岗市-兴山区": "宝泉岭管局,军川农场,二九农场,名山,乡,镇,村",
    "黑龙江-双鸭山市-尖山区": "矿,村,镇,乡,屯及大唐热电,开发区",
    "黑龙江-双鸭山市-集贤县": "矿,村,镇,乡,屯及大唐热电,开发区",
    "黑龙江-双鸭山市-友谊县": "矿,村,镇,乡,屯及大唐热电,开发区",
    "黑龙江-双鸭山市-宝清县": "矿,村,镇,乡,屯及大唐热电,开发区",
    "黑龙江-双鸭山市-饶河县": "矿,村,镇,乡,屯及大唐热电,开发区",
    "黑龙江-大庆市-萨尔图区": "乙稀,东光小区,方晓东湖小区,油,矿,队,八百响,王家围子,乘风庄,东湖,乡,村",
    "黑龙江-大庆市-龙凤区": "乙稀,东光小区,方晓东湖小区,油,矿,队,八百响,王家围子,乘风庄,东湖,乡,村",
    "黑龙江-大庆市-杜尔伯特蒙古族自治县": "乡,镇,村",
    "黑龙江-伊春市-伊春区": "乡,镇,村",
    "黑龙江-伊春市-南岔区": "乡,镇,村",
    "黑龙江-伊春市-友好区": "乡,镇,村",
    "黑龙江-伊春市-西林区": "乡,镇,村",
    "黑龙江-伊春市-美溪区": "乡,镇,村",
    "黑龙江-伊春市-金山屯区": "乡,镇,村",
    "黑龙江-伊春市-五营区": "乡,镇,村",
    "黑龙江-伊春市-乌马河区": "乡,镇,村",
    "黑龙江-伊春市-铁力市": "乡,镇,村",
    "黑龙江-佳木斯市-永红区": "莲江口镇,敖其镇,大来镇,沿江乡,松江乡,西格木乡,模范村,黑通乡,四丰乡,集贤",
    "黑龙江-佳木斯市-向阳区": "莲江口镇,敖其镇,大来镇,沿江乡,松江乡,西格木乡,模范村,黑通乡,四丰乡,集贤",
    "黑龙江-佳木斯市-前进区": "莲江口镇,敖其镇,大来镇,沿江乡,松江乡,西格木乡,模范村,黑通乡,四丰乡,集贤",
    "黑龙江-佳木斯市-东风区": "莲江口镇,敖其镇,大来镇,沿江乡,松江乡,西格木乡,模范村,黑通乡,四丰乡,集贤",
    "黑龙江-佳木斯市-桦南县": "乡,镇,村",
    "黑龙江-佳木斯市-汤原县": "乡,镇,村",
    "黑龙江-佳木斯市-抚远县": "乡,镇,村",
    "黑龙江-佳木斯市-同江市": "乡,镇,村",
    "黑龙江-佳木斯市-富锦市": "乡,镇,村",
    "黑龙江-七台河市-新兴区": "乡,镇,村,农场,马场",
    "黑龙江-七台河市-桃山区": "乡,镇,村,农场,马场",
    "黑龙江-七台河市-茄子河区": "乡,镇,村,农场,马场",
    "黑龙江-七台河市-勃利县": "乡,镇,村,农场,马场",
    "黑龙江-牡丹江市-东安区": "乡,镇,村",
    "黑龙江-牡丹江市-阳明区": "乡,镇,村",
    "黑龙江-牡丹江市-爱民区": "乡,镇,村",
    "黑龙江-牡丹江市-西安区": "乡,镇,村",
    "黑龙江-牡丹江市-绥芬河市": "乡,镇,村",
    "黑龙江-黑河市-爱辉区": "乡,镇,村",
    "黑龙江-绥化市-北林区": "乡,镇,村",
    "黑龙江-绥化市-兰西县": "乡,镇,村",
    "黑龙江-绥化市-绥棱县": "乡,镇,村",
    "黑龙江-绥化市-肇东市": "乡,镇,村",
    "黑龙江-大兴安岭地区-加格达奇区": "乡,镇,村",
    "上海-上海市-黄浦区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-卢湾区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-徐汇区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-长宁区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-静安区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-普陀区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-闸北区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-虹口区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-杨浦区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-闵行区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-宝山区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-嘉定区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-浦东新区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-金山区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-松江区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-青浦区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-奉贤区": "宝钢厂区,新村,万狮村,大洋山,小洋山",
    "上海-上海市-崇明县": "前哨农场,东旺沙,横沙乡,村",
    "江苏-南京市-玄武区": "",
    "江苏-南京市-白下区": "",
    "江苏-南京市-秦淮区": "",
    "江苏-南京市-建邺区": "",
    "江苏-南京市-鼓楼区": "",
    "江苏-南京市-下关区": "",
    "江苏-南京市-浦口区": "",
    "江苏-南京市-栖霞区": "",
    "江苏-南京市-雨花台区": "",
    "江苏-南京市-江宁区": "",
    "江苏-南京市-六合区": "",
    "江苏-南京市-溧水县": "孔镇,云鹤镇,沙河,群力镇, 乡,村",
    "江苏-南京市-高淳县": "桠溪镇,定埠镇,凤山,薛城镇,固城镇,乡,村",
    "江苏-无锡市-崇安区": "",
    "江苏-无锡市-南长区": "",
    "江苏-无锡市-北塘区": "",
    "江苏-无锡市-锡山区": "",
    "江苏-无锡市-惠山区": "",
    "江苏-无锡市-滨湖区": "",
    "江苏-无锡市-新区": "",
    "江苏-无锡市-江阴市": "乡,镇,村",
    "江苏-无锡市-宜兴市": "乡,镇,村",
    "江苏-徐州市-鼓楼区": "空军学院,乡,村",
    "江苏-徐州市-云龙区": "乡,村",
    "江苏-徐州市-九里区": "乡,村",
    "江苏-徐州市-贾汪区": "乡,村",
    "江苏-徐州市-泉山区": "乡,村",
    "江苏-徐州市-丰县": "乡,镇,村",
    "江苏-徐州市-沛县": "孔庄矿,徐庄矿,龙东矿,龙西矿,张双楼矿,乡,村",
    "江苏-徐州市-睢宁县": "乡,镇,村",
    "江苏-徐州市-新沂市": "乡,镇,村",
    "江苏-徐州市-邳州市": "乡,镇,村",
    "江苏-常州市-天宁区": "乡,镇,村",
    "江苏-常州市-钟楼区": "乡,镇,村",
    "江苏-常州市-戚墅堰区": "采菱路,东南开发区乡,镇",
    "江苏-常州市-新北区": "乡,镇,村",
    "江苏-常州市-武进区": "乡,镇,村",
    "江苏-常州市-溧阳市": "旅游区,乡,镇,村",
    "江苏-常州市-金坛市": "儒林镇,竹箦,劳改队,乡,村",
    "江苏-苏州市-沧浪区": "越溪镇,乡",
    "江苏-苏州市-平江区": "越溪镇,乡",
    "江苏-苏州市-金阊区": "越溪镇,乡",
    "江苏-苏州市-虎丘区": "越溪镇,乡",
    "江苏-苏州市-吴中区": "越溪镇,乡",
    "江苏-苏州市-相城区": "越溪镇,乡",
    "江苏-苏州市-新区": "越溪镇,乡",
    "江苏-苏州市-园区": "越溪镇,乡",
    "江苏-苏州市-常熟市": "发电厂,芬欧汇川,尚湖,新华港区",
    "江苏-苏州市-张家港市": "双山岛,乡,镇,村",
    "江苏-苏州市-昆山市": "加工区,乡乡,镇,村",
    "江苏-苏州市-吴江市": "乡,镇,村",
    "江苏-苏州市-太仓市": "乡,镇,村",
    "江苏-南通市-崇川区": "",
    "江苏-南通市-港闸区": "",
    "江苏-南通市-开发区": "",
    "江苏-南通市-海安县": "乡,镇,村",
    "江苏-南通市-如东县": "环港,环渔,刘埠外",
    "江苏-南通市-启东市": "永隆乡,镇,村",
    "江苏-南通市-如皋市": "乡,镇,村",
    "江苏-南通市-通州市": "乡,镇,村",
    "江苏-南通市-海门市": "海门港,临江镇,农场,江心沙,乡",
    "江苏-连云港市-连云区": "连岛,宿城乡,高公岛",
    "江苏-连云港市-新浦区": "连岛,宿城乡,高公岛",
    "江苏-连云港市-海州区": "连岛,宿城乡,高公岛",
    "江苏-连云港市-赣榆县": "乡,镇,村",
    "江苏-连云港市-东海县": "乡,镇,村",
    "江苏-连云港市-灌云县": "乡,镇,村",
    "江苏-连云港市-灌南县": "乡,镇,村",
    "江苏-淮安市-清河区": "乡,镇,村",
    "江苏-淮安市-楚州区": "乡,镇,村",
    "江苏-淮安市-淮阴区": "乡,镇,村",
    "江苏-淮安市-清浦区": "乡,镇,村",
    "江苏-淮安市-涟水县": "乡,镇,村",
    "江苏-淮安市-洪泽县": "乡,镇,村",
    "江苏-淮安市-盱眙县": "乡,镇,村",
    "江苏-淮安市-金湖县": "乡,镇,村",
    "江苏-盐城市-亭湖区": "乡,村",
    "江苏-盐城市-盐都区": "乡,村",
    "江苏-盐城市-响水县": "乡,镇,村",
    "江苏-盐城市-滨海县": "乡,镇,村",
    "江苏-盐城市-阜宁县": "乡,镇,村",
    "江苏-盐城市-射阳县": "乡,镇,村",
    "江苏-盐城市-建湖县": "荡中镇,乡,村",
    "江苏-盐城市-东台市": "乡,镇,村",
    "江苏-盐城市-大丰市": "乡,镇,村",
    "江苏-扬州市-广陵区": "乡,村",
    "江苏-扬州市-邗江区": "乡,村",
    "江苏-扬州市-维扬区": "乡,村",
    "江苏-扬州市-经济开发区": "乡,村",
    "江苏-扬州市-宝应县": "乡,镇,村",
    "江苏-扬州市-仪征市": "南京港,仪征化纤,乡,镇,村",
    "江苏-扬州市-高邮市": "乡,镇,村",
    "江苏-扬州市-江都市": "永安,绿洋,乡,镇,村",
    "江苏-镇江市-京口区": "世业洲,江心洲",
    "江苏-镇江市-润州区": "世业洲,江心洲",
    "江苏-镇江市-丹徒区": "世业洲,江心洲",
    "江苏-镇江市-丹阳市": "胡桥镇,全州镇,乡,镇,村",
    "江苏-镇江市-扬中市": "乡,镇,村",
    "江苏-镇江市-句容市": "乡,镇,村",
    "江苏-泰州市-海陵区": "",
    "江苏-泰州市-高港区": "",
    "江苏-泰州市-兴化市": "乡,镇,村",
    "江苏-泰州市-靖江市": "乡,镇,村",
    "江苏-泰州市-泰兴市": "乡,镇,村",
    "江苏-泰州市-姜堰市": "乡,镇,村",
    "江苏-宿迁市-宿城区": "乡,镇,村",
    "江苏-宿迁市-宿豫县": "乡,镇,村",
    "江苏-宿迁市-沭阳县": "乡,镇,村",
    "江苏-宿迁市-泗阳县": "乡,镇,村",
    "江苏-宿迁市-泗洪县": "乡,镇,村",
    "浙江-杭州市-上城区": "",
    "浙江-杭州市-下城区": "",
    "浙江-杭州市-江干区": "",
    "浙江-杭州市-拱墅区": "",
    "浙江-杭州市-西湖区": "",
    "浙江-杭州市-滨江区": "",
    "浙江-杭州市-萧山区": "欢潭乡",
    "浙江-杭州市-余杭区": "",
    "浙江-杭州市-桐庐县": "乡,村",
    "浙江-杭州市-淳安县": "文昌镇,石林镇,临岐镇,威坪镇,姜家镇,梓桐镇,汾口镇,中洲镇,大墅镇,枫树岭镇,里商乡,金峰乡,富文乡,左口乡,屏门乡,瑶山乡,王阜乡,宋村乡,鸠坑乡,浪川乡,界首乡,安阳乡,村",
    "浙江-杭州市-建德市": "李家镇,莲花镇,大慈岩镇,钦堂乡,村",
    "浙江-杭州市-富阳市": "高桥镇,胥口镇,渌渚镇,常绿镇,里山镇,湖源乡,渔山乡,春建乡,新桐乡,村",
    "浙江-杭州市-临安市": "清凉峰镇,岛石镇,马啸乡,河桥镇,湍口镇,乐平镇,潜川镇,大峡谷镇,新桥乡,横路乡,千洪乡,东天目乡,西天目乡",
    "浙江-宁波市-海曙区": "",
    "浙江-宁波市-江东区": "",
    "浙江-宁波市-江北区": "",
    "浙江-宁波市-北仑区": "",
    "浙江-宁波市-镇海区": "",
    "浙江-宁波市-鄞州区": "",
    "浙江-宁波市-象山县": "鹤浦镇,高塘乡,定塘镇,蒤茨镇,松兰山",
    "浙江-宁波市-宁海县": "",
    "浙江-宁波市-余姚市": "乡,村",
    "浙江-宁波市-慈溪市": "乡,村",
    "浙江-宁波市-奉化市": "尚田镇,大堰镇,乡,村",
    "浙江-温州市-鹿城区": "",
    "浙江-温州市-龙湾区": "",
    "浙江-温州市-瓯海区": "",
    "浙江-温州市-洞头县": "大门镇,元觉乡,霓屿乡,鹿西乡,村",
    "浙江-温州市-永嘉县": "沙头镇,碧莲镇,巽宅镇,岩头镇,枫林镇,岩坦镇,大箬岩镇,乡,村",
    "浙江-温州市-平阳县": "乡,村",
    "浙江-温州市-苍南县": "芦浦镇,莒溪镇,舥艚镇,望里镇,观美镇,藻溪镇,桥墩镇,炎亭镇,大渔镇,矾山镇,赤溪镇,马站镇,霞关镇,沿浦镇,南宋镇,凤池乡,浦亭乡,腾垟乡,云岩乡,仙居乡,新安乡,括山乡,五凤乡,石坪乡,龙沙乡,昌禅乡,中墩乡,渔寮乡,蒲城乡,凤阳畲族乡,岱岭畲族乡,村",
    "浙江-温州市-文成县": "南田镇,百丈漈镇,黄坦镇,西坑镇,玉壶镇,巨屿镇,珊溪镇,乡,村",
    "浙江-温州市-泰顺县": "乡,镇,村",
    "浙江-温州市-瑞安市": "高楼,龙湖镇,曹村,梅屿乡,宁益乡,东岩乡,鹿木,村",
    "浙江-温州市-乐清市": "乡,村",
    "浙江-嘉兴市-秀城区": "",
    "浙江-嘉兴市-南湖区": "",
    "浙江-嘉兴市-秀洲区": "",
    "浙江-嘉兴市-嘉善县": "乡,村",
    "浙江-嘉兴市-海盐县": "",
    "浙江-嘉兴市-海宁市": "",
    "浙江-嘉兴市-平湖市": "乡,村",
    "浙江-嘉兴市-桐乡市": "村",
    "浙江-湖州市-吴兴区": "千金镇",
    "浙江-湖州市-南浔区": "千金镇",
    "浙江-湖州市-德清县": "乡,村",
    "浙江-湖州市-长兴县": "乡,村",
    "浙江-湖州市-安吉县": "鄣吴镇,溪龙乡,皈山乡,上墅乡,山川乡,村",
    "浙江-绍兴市-越城区": "稽东镇,王坛镇,富盛镇,乡,村",
    "浙江-绍兴市-新昌县": "乡,镇,村",
    "浙江-绍兴市-诸暨市": "乡,村",
    "浙江-绍兴市-上虞市": "下管镇,岭南乡,陈溪乡,丁宅乡,龙浦乡,三汇镇,村",
    "浙江-绍兴市-嵊州市": "仙岩镇,三界镇,下王镇,黄泽镇,北漳镇,金庭镇,谷来镇,雅璜,通源,王院,竹溪,贵门,里南,村",
    "浙江-金华市-婺城区": "",
    "浙江-金华市-金东区": "",
    "浙江-金华市-武义县": "履坦镇,王宅镇,桃溪镇,新宅镇,茭道镇,柳城畲族镇,大田乡,白姆乡,俞源乡,坦洪乡,西联乡,三港乡,大溪口乡,村",
    "浙江-金华市-浦江县": "郑宅镇,檀溪镇,杭坪镇,虞宅乡,大畈乡,中余乡,前吴乡,花桥乡,村",
    "浙江-金华市-磐安县": "尚湖镇,方前镇,玉山镇,仁川镇,大盘镇,冷水镇,胡宅乡,窈川乡,双溪乡,深泽乡,双峰乡,盘峰乡,维新乡,高二乡,九和乡,万苍乡,村",
    "浙江-金华市-兰溪市": "乡,村",
    "浙江-金华市-义乌市": "毛店乡,东塘,村",
    "浙江-金华市-东阳市": "乡,村",
    "浙江-金华市-永康市": "",
    "浙江-衢州市-柯城区": "乡,镇,村",
    "浙江-衢州市-衢江区": "乡,镇,村",
    "浙江-衢州市-常山县": "乡,镇,村",
    "浙江-衢州市-开化县": "乡,镇,村",
    "浙江-衢州市-龙游县": "乡,镇,村",
    "浙江-衢州市-江山市": "乡,镇,村",
    "浙江-舟山市-定海区": "普陀山,朱家尖,桃花岛",
    "浙江-舟山市-普陀区": "普陀山,朱家尖,桃花岛",
    "浙江-舟山市-岱山县": "乡,镇,村",
    "浙江-舟山市-嵊泗县": "乡,镇,村",
    "浙江-台州市-椒江区": "大陈岛,沿海",
    "浙江-台州市-黄岩区": "洋乡,上郑乡,平田乡,富士乡,村",
    "浙江-台州市-路桥区": "",
    "浙江-台州市-玉环县": "鸡山乡,海山乡,村",
    "浙江-台州市-三门县": "亭旁镇,六敖镇,横渡镇,花桥镇,小雄镇,高枧乡,沿赤乡,泗淋乡,蛇蟠乡,村",
    "浙江-台州市-天台县": "石梁镇,街头镇,三合镇,三州乡,龙溪乡,雷峰乡,南屏乡,泳溪乡,村",
    "浙江-台州市-仙居县": "朱溪镇,安岭乡,溪港乡,湫山乡,淡竹乡,步路乡,上张乡,广度乡,大战乡,双庙乡,村",
    "浙江-台州市-温岭市": "潘郎镇,东浦镇,东浦农场,横河镇,钧浜镇,箬山镇,石塘镇,太湖乡,江厦乡,横山乡,镇海乡,村",
    "浙江-台州市-临海市": "小芝镇,桃渚镇,杜桥镇,河头镇,沿江镇,括苍镇,永丰镇,汇溪镇,乡,村",
    "浙江-丽水市-莲都区": "联城镇,老竹畲族镇,双溪镇,太平乡,仙渡乡,峰源乡,高溪乡,丽新畲族乡,双黄乡,黄村乡,村",
    "浙江-丽水市-青田县": "乡,镇,村",
    "浙江-丽水市-缙云县": "舒洪镇,大洋镇,大源镇,东方镇,溶江乡,七里乡,胡源乡,南溪乡,木栗乡,雁岭乡,城北乡,白竹乡,三溪乡,前路乡,新川乡,双川乡,方溪乡,石笕乡,双溪口乡,村",
    "浙江-丽水市-遂昌县": "乡,镇,村",
    "浙江-丽水市-松阳县": "乡,镇,村",
    "浙江-丽水市-云和县": "乡,镇,村",
    "浙江-丽水市-庆元县": "乡,镇,村",
    "浙江-丽水市-景宁畲族自治县": "乡,镇,村",
    "浙江-丽水市-龙泉市": "乡,镇,村",
    "安徽-合肥市-瑶海区": "乡,镇,村",
    "安徽-合肥市-庐阳区": "乡,镇,村",
    "安徽-合肥市-蜀山区": "乡,镇,村",
    "安徽-合肥市-包河区": "乡,镇,村",
    "安徽-合肥市-高新区": "乡,镇,村",
    "安徽-合肥市-中区": "乡,镇,村",
    "安徽-合肥市-长丰县": "庄墓镇,杨庙镇,吴山镇,下塘镇,朱巷镇,罗塘乡,义井乡,陶楼乡,造甲乡,杜集乡,左店乡,村",
    "安徽-合肥市-肥东县": "乡,镇,村",
    "安徽-合肥市-肥西县": "乡,镇,村",
    "安徽-芜湖市-镜湖区": "乡,镇,村",
    "安徽-芜湖市-弋江区": "乡,镇,村",
    "安徽-芜湖市-三山区": "乡,镇,村",
    "安徽-芜湖市-鸠江区": "乡,镇,村",
    "安徽-芜湖市-芜湖县": "乡,镇,村",
    "安徽-芜湖市-繁昌县": "繁阳镇,荻港镇,平铺镇,新港镇,峨山镇,村",
    "安徽-芜湖市-南陵县": "丫山镇,三里镇,黄墓镇,弋江镇,工山镇,东塘乡,太丰乡,东河乡,奚滩乡,葛林乡,石铺乡,九连乡,绿岭乡,戴镇乡,何湾乡,烟墩乡,峨岭乡,家发乡,奎湖乡,村",
    "安徽-蚌埠市-蚌山区": "乡,镇,村",
    "安徽-蚌埠市-龙子湖区": "乡,镇,村",
    "安徽-蚌埠市-禹会区": "乡,镇,村",
    "安徽-蚌埠市-淮上区": "乡,镇,村",
    "安徽-蚌埠市-怀远县": "乡,镇,村",
    "安徽-蚌埠市-五河县": "乡,镇,村",
    "安徽-蚌埠市-固镇县": "乡,镇,村",
    "安徽-淮南市-大通区": "九龙岗,乡,镇,村",
    "安徽-淮南市-田家庵区": "乡,镇,村",
    "安徽-淮南市-谢家集区": "乡,镇,村",
    "安徽-淮南市-八公山区": "乡,镇,村",
    "安徽-淮南市-潘集区": "乡,镇,村",
    "安徽-淮南市-凤台县": "乡,镇,村",
    "安徽-马鞍山市-金家庄区": "向山镇,银塘镇,佳山乡,村",
    "安徽-马鞍山市-花山区": "向山镇,银塘镇,佳山乡,村",
    "安徽-马鞍山市-雨山区": "向山镇,银塘镇,佳山乡,村",
    "安徽-马鞍山市-当涂县": "乡,镇,村",
    "安徽-淮北市-杜集区": "乡,镇,村",
    "安徽-淮北市-相山区": "乡,镇,村",
    "安徽-淮北市-烈山区": "乡,镇,村",
    "安徽-淮北市-濉溪县": "乡,镇,村",
    "安徽-铜陵市-铜官山区": "乡,镇,村",
    "安徽-铜陵市-狮子山区": "乡,镇,村",
    "安徽-铜陵市-郊区": "乡,镇,村",
    "安徽-安庆市-迎江区": "乡,镇,村",
    "安徽-安庆市-大观区": "乡,镇,村",
    "安徽-安庆市-宜秀区": "乡,镇,村",
    "安徽-安庆市-怀宁县": "乡,镇,村",
    "安徽-安庆市-潜山县": "乡,镇,村",
    "安徽-安庆市-太湖县": "乡,镇,村",
    "安徽-安庆市-宿松县": "乡,镇,村",
    "安徽-安庆市-桐城市": "双港镇,金神镇,孔城镇,青草镇,吕亭镇,大关镇,唐湾镇,鲟鱼镇,嬉子湖镇,黄甲镇,乡,村",
    "安徽-黄山市-屯溪区": "乡,镇,村",
    "安徽-黄山市-黄山区": "乡,镇,村",
    "安徽-黄山市-徽州区": "乡,镇,村",
    "安徽-黄山市-歙县": "乡,镇,村",
    "安徽-黄山市-休宁县": "乡,镇,村",
    "安徽-黄山市-黟县": "乡,镇,村",
    "安徽-黄山市-祁门县": "乡,镇,村",
    "安徽-滁州市-琅琊区": "沙河镇,章广镇,黄泥岗镇,珠龙镇,大柳镇,施集镇,村",
    "安徽-滁州市-南谯区": "沙河镇,章广镇,黄泥岗镇,珠龙镇,大柳镇,施集镇,村",
    "安徽-滁州市-来安县": "乡,镇,村",
    "安徽-滁州市-全椒县": "乡,镇,村",
    "安徽-滁州市-定远县": "乡,镇,村",
    "安徽-滁州市-凤阳县": "武店镇,西泉镇,刘府镇,大庙镇,殷涧镇,总铺镇,红心镇,板桥镇,大溪河镇,小溪河镇,官塘镇,枣巷镇,黄湾乡,村",
    "安徽-滁州市-天长市": "大通镇,冶山镇,郑集镇,张铺镇,新街镇,永丰镇,万寿镇,村",
    "安徽-滁州市-明光市": "乡,镇,村",
    "安徽-阜阳市-颍州区": "乡,镇,村",
    "安徽-阜阳市-颍东区": "乡,镇,村",
    "安徽-阜阳市-颍泉区": "乡,镇,村",
    "安徽-阜阳市-临泉县": "乡,镇,村",
    "安徽-阜阳市-太和县": "乡,镇,村",
    "安徽-阜阳市-阜南县": "乡,镇,村",
    "安徽-阜阳市-颍上县": "乡,镇,村",
    "安徽-阜阳市-界首市": "乡,镇,村",
    "安徽-宿州市-埇桥区": "乡,镇,村",
    "安徽-宿州市-砀山县": "砀城镇,唐寨镇,周寨镇,玄庙镇,官庄坝镇,曹庄镇,关帝庙镇,程庄镇,良梨镇,赵屯镇,村",
    "安徽-宿州市-萧县": "乡,镇,村",
    "安徽-宿州市-灵璧县": "乡,镇,村",
    "安徽-宿州市-泗县": "乡,镇,村",
    "安徽-巢湖市-居巢区": "柘皋镇,炯炀镇,坝镇镇,散兵镇,苏湾镇,夏阁镇,黄麓镇,栏杆集镇,庙岗乡,村",
    "安徽-巢湖市-庐江县": "乡,镇,村",
    "安徽-巢湖市-无为县": "乡,镇,村",
    "安徽-巢湖市-含山县": "乡,镇,村",
    "安徽-六安市-金安区": "木厂镇,马头镇,东桥镇,张店镇,毛坦厂镇,东河口镇,双河镇,施桥镇,孙岗镇,椿树镇,城北乡,翁墩乡,淠东乡,中店乡,横塘岗乡,苏埠镇,韩摆渡镇,新安镇,顺河镇,独山镇,石婆店镇,城南镇,丁集镇,固镇镇,徐集镇,分路口镇,江家店镇,单王乡,青山乡,石板冲乡,西河口乡,罗集乡,狮子岗乡,村",
    "安徽-六安市-裕安区": "木厂镇,马头镇,东桥镇,张店镇,毛坦厂镇,东河口镇,双河镇,施桥镇,孙岗镇,椿树镇,城北乡,翁墩乡,淠东乡,中店乡,横塘岗乡,苏埠镇,韩摆渡镇,新安镇,顺河镇,独山镇,石婆店镇,城南镇,丁集镇,固镇镇,徐集镇,分路口镇,江家店镇,单王乡,青山乡,石板冲乡,西河口乡,罗集乡,狮子岗乡,村",
    "安徽-六安市-寿县": "乡,镇,村",
    "安徽-六安市-霍邱县": "乡,镇,村",
    "安徽-六安市-舒城县": "晓天镇,桃溪镇,万佛湖镇,千人桥镇,百神庙镇,舒茶镇,南港镇,张母桥镇,五显镇,山七镇,河棚镇,汤池镇,春秋乡,柏林乡,棠树乡,阙店乡,高峰乡,庐镇乡,村",
    "安徽-六安市-金寨县": "乡,镇,村",
    "安徽-六安市-霍山县": "下符桥镇,但家庙镇,与儿街镇,诸佛庵镇,落儿岭镇,磨子潭镇,大化坪镇,漫水河镇,上士市镇,单龙寺乡,东西溪乡,太平畈乡,太阳乡,村",
    "安徽-亳州市-谯城区": "芦庙镇,华佗镇,牛集镇,颜集镇,五马镇,谯东镇,沙土镇,观堂镇,城父镇,十河镇,双沟镇,淝河镇,古城镇,龙扬镇,立德镇,张店乡,赵桥乡,村",
    "安徽-亳州市-涡阳县": "乡,镇,村",
    "安徽-亳州市-蒙城县": "乡,镇,村",
    "安徽-亳州市-利辛县": "乡,镇,村",
    "安徽-池州市-贵池区": "乡,镇,村",
    "安徽-池州市-东至县": "乡,镇,村",
    "安徽-池州市-石台县": "乡,镇,村",
    "安徽-宣城市-宣州区": "乡,镇,村",
    "安徽-宣城市-郎溪县": "新发镇,涛城镇,南丰镇,梅渚镇,东夏镇,毕桥镇,凌笪乡,飞里乡,姚村乡,幸福乡,村",
    "安徽-宣城市-广德县": "柏垫镇,誓节镇,邱村镇,卢村乡,东亭乡,杨滩乡,四合乡,村",
    "安徽-宣城市-泾县": "泾川镇,桃花潭镇,茂林镇,蔡村镇,琴溪镇,云岭镇,黄村镇,汀溪乡,昌桥乡,村",
    "安徽-宣城市-绩溪县": "乡,镇,村",
    "安徽-宣城市-旌德县": "乡,镇,村",
    "安徽-宣城市-宁国市": "港口镇,梅林镇,仙霞镇,甲路镇,胡乐镇,霞西镇,天湖镇,云梯畲族乡,南极乡,万家乡,竹峰乡,方塘乡,青龙乡,村",
    "福建-福州市-鼓楼区": "",
    "福建-福州市-台江区": "",
    "福建-福州市-仓山区": "",
    "福建-福州市-马尾区": "",
    "福建-福州市-晋安区": "",
    "福建-福州市-闽侯县": "白沙镇,南屿镇,南通镇,上街镇,荆溪镇,竹岐乡,鸿尾乡,洋里乡,大湖乡,廷坪乡,小箬乡,江洋农场,村",
    "福建-福州市-连江县": "东岱镇,晓澳镇,东湖镇,丹阳镇,长龙镇,透堡镇,马鼻镇,官坂镇,筱埕镇,黄岐镇,苔菉镇,浦口镇,坑园镇,潘度乡,蓼沿乡,安凯乡,下宫乡,小沧畲族乡,马祖乡,村",
    "福建-福州市-罗源县": "乡,镇,村",
    "福建-福州市-闽清县": "乡,镇,村",
    "福建-福州市-福清市": "乡,镇,村",
    "福建-福州市-长乐市": "乡,镇,村",
    "福建-厦门市-思明区": "鼓浪屿,大嶝岛,小嶝岛,乡,村,部队,农场",
    "福建-厦门市-海沧区": "鼓浪屿,大嶝岛,小嶝岛,乡,村,部队,农场",
    "福建-厦门市-湖里区": "鼓浪屿,大嶝岛,小嶝岛,乡,村,部队,农场",
    "福建-厦门市-集美区": "鼓浪屿,大嶝岛,小嶝岛,乡,村,部队,农场",
    "福建-厦门市-同安区": "鼓浪屿,大嶝岛,小嶝岛,乡,村,部队,农场",
    "福建-厦门市-翔安区": "鼓浪屿,大嶝岛,小嶝岛,乡,村,部队,农场",
    "福建-莆田市-城厢区": "乡,村",
    "福建-莆田市-涵江区": "乡,村",
    "福建-莆田市-荔城区": "乡,村",
    "福建-莆田市-秀屿区": "乡,村",
    "福建-莆田市-仙游县": "度尾镇,盖尾镇,园庄镇,大济镇,龙华镇,钟山镇,游洋镇,西苑乡,石苍乡,社硎乡,书峰乡,菜溪乡,村",
    "福建-三明市-梅列区": "乡,镇,村",
    "福建-三明市-三元区": "乡,镇,村",
    "福建-三明市-明溪县": "乡,镇,村",
    "福建-三明市-大田县": "乡,镇,村",
    "福建-三明市-尤溪县": "乡,镇,村",
    "福建-三明市-沙县": "乡,镇,村",
    "福建-三明市-永安市": "乡,镇,村",
    "福建-泉州市-鲤城区": "乡,镇,村,部队",
    "福建-泉州市-丰泽区": "乡,镇,村,部队",
    "福建-泉州市-洛江区": "乡,镇,村,部队",
    "福建-泉州市-泉港区": "乡,镇,村,部队",
    "福建-泉州市-惠安县": "净峰镇,小岞镇,东桥镇,峰尾镇,肖厝镇,乡,村",
    "福建-泉州市-安溪县": "乡,镇,村,部队",
    "福建-泉州市-永春县": "乡,镇,村,部队",
    "福建-泉州市-德化县": "龙门滩镇,雷峰镇,南埕镇,水口镇,赤水镇,上涌镇,葛坑镇,杨梅乡,汤头乡,桂阳乡,盖德乡,国宝乡,美湖乡,大铭乡,春美乡,村",
    "福建-泉州市-石狮市": "乡",
    "福建-泉州市-晋江市": "磁灶镇,陈埭镇,池店镇,紫帽镇,西滨镇,乡,村,港口,码头",
    "福建-泉州市-南安市": "乡,村",
    "福建-漳州市-芗城区": "天宝镇,石亭镇,浦南镇,浦林镇,郭坑镇,乡,村",
    "福建-漳州市-龙文区": "天宝镇,石亭镇,浦南镇,浦林镇,郭坑镇,乡,村",
    "福建-漳州市-云霄县": "乡,镇,村,部队",
    "福建-漳州市-漳浦县": "乡,镇,村,部队",
    "福建-漳州市-长泰县": "岩溪镇,林敦镇,坂里乡,村",
    "福建-漳州市-东山县": "乡,镇,村,部队",
    "福建-漳州市-南靖县": "和溪镇,奎洋镇,梅林镇,书洋镇,船场镇,村",
    "福建-漳州市-平和县": "乡,镇,村,部队",
    "福建-漳州市-龙海市": "白水镇,程溪镇,港尾镇,隆教畲族乡,东泗镇,浮宫镇,紫泥镇,农场,工业园,岛,乡,村",
    "福建-南平市-延平区": "乡,镇,村",
    "福建-南平市-顺昌县": "乡,镇,村",
    "福建-南平市-武夷山市": "乡,镇,村",
    "福建-南平市-建瓯市": "乡,镇,村",
    "福建-南平市-建阳市": "乡,镇,村",
    "福建-龙岩市-新罗区": "适中镇,雁石镇,白沙镇,万安镇,大池镇,小池镇,江山乡,岩山乡,苏坂乡,村",
    "福建-龙岩市-长汀县": "乡,镇,村",
    "福建-龙岩市-永定县": "乡,镇,村",
    "福建-龙岩市-上杭县": "乡,镇,村",
    "福建-龙岩市-武平县": "乡,镇,村",
    "福建-龙岩市-连城县": "乡,镇,村",
    "福建-龙岩市-漳平市": "乡,镇,村",
    "福建-宁德市-蕉城区": "乡,镇,村",
    "福建-宁德市-霞浦县": "乡,镇,村",
    "福建-宁德市-古田县": "乡,镇,村",
    "福建-宁德市-屏南县": "乡,镇,村",
    "福建-宁德市-寿宁县": "乡,镇,村",
    "福建-宁德市-周宁县": "乡,镇,村",
    "福建-宁德市-柘荣县": "乡,镇,村",
    "福建-宁德市-福安市": "乡,镇,村",
    "福建-宁德市-福鼎市": "贯岭镇,前岐镇,沙埕镇,店下镇,磻溪镇,白琳镇,点头镇,管阳镇,嵛山镇,硖门畲族乡,叠石乡,佳阳畲族乡,村",
    "江西-南昌市-东湖区": "",
    "江西-南昌市-西湖区": "",
    "江西-南昌市-青云谱区": "",
    "江西-南昌市-青山湖区": "",
    "江西-南昌市-安义县": "乡,镇,村",
    "江西-南昌市-进贤县": "梅庄镇,张公镇,罗溪镇,架桥镇,前坊镇,三里乡,二塘乡,钟陵乡,池溪乡,南台乡,三阳集乡,七里乡,下埠集乡,衙前乡,白圩乡,长山晏乡,泉岭乡,村",
    "江西-景德镇市-昌江区": "乡,镇,村",
    "江西-景德镇市-珠山区": "乡,镇,村",
    "江西-景德镇市-浮梁县": "乡,镇,村",
    "江西-景德镇市-乐平市": "乡,镇,村",
    "江西-萍乡市-安源区": "乡,镇,村",
    "江西-萍乡市-湘东区": "乡,镇,村",
    "江西-萍乡市-上栗县": "乡,镇,村",
    "江西-萍乡市-芦溪县": "乡,镇,村",
    "江西-九江市-庐山区": "乡,镇,村",
    "江西-九江市-浔阳区": "乡,镇,村",
    "江西-九江市-武宁县": "乡,镇,村",
    "江西-九江市-永修县": "乡,镇,村",
    "江西-九江市-德安县": "乡,镇,村",
    "江西-九江市-瑞昌市": "乡,镇,村",
    "江西-新余市-渝水区": "乡,镇,村",
    "江西-新余市-分宜县": "乡,镇,村",
    "江西-鹰潭市-月湖区": "乡,镇,村",
    "江西-鹰潭市-余江县": "乡,镇,村",
    "江西-鹰潭市-贵溪市": "乡,镇,村",
    "江西-赣州市-章贡区": "沙河镇,水南镇,水东镇,沙石镇,村",
    "江西-赣州市-黄金区": "沙河镇,水南镇,水东镇,沙石镇,村",
    "江西-赣州市-赣县": "王母渡镇,沙地镇,江口镇,田村镇,南塘镇,吉埠镇,五云镇,韩坊乡,阳埠乡,大埠乡,长洛乡,大田乡,湖江乡,储潭乡,石芫乡,三溪乡,白鹭乡,村",
    "江西-赣州市-信丰县": "乡,镇,村",
    "江西-赣州市-大余县": "乡,镇,村",
    "江西-赣州市-上犹县": "乡,镇,村",
    "江西-赣州市-崇义县": "乡,镇,村",
    "江西-赣州市-安远县": "乡,镇,村",
    "江西-赣州市-龙南县": "乡,镇,村",
    "江西-赣州市-定南县": "乡,镇,村",
    "江西-赣州市-全南县": "乡,镇,村",
    "江西-赣州市-宁都县": "乡,镇,村",
    "江西-赣州市-于都县": "乡,镇,村",
    "江西-赣州市-兴国县": "乡,镇,村",
    "江西-赣州市-会昌县": "乡,镇,村",
    "江西-赣州市-寻乌县": "乡,镇,村",
    "江西-赣州市-石城县": "乡,镇,村",
    "江西-赣州市-瑞金市": "乡,镇,村",
    "江西-赣州市-南康市": "凤岗镇,龙回镇,镜坝镇,横市镇,潭东镇,浮石乡,赤土畲族乡,横寨乡,朱坊乡,太窝乡,三江乡,龙华乡,十八塘乡,麻双乡,大坪乡,坪市乡,隆木乡,村",
    "江西-吉安市-吉州区": "乡,镇,村",
    "江西-吉安市-青原区": "乡,镇,村",
    "江西-吉安市-吉安县": "乡,镇,村",
    "江西-吉安市-永丰县": "东湖工业区,城北工业区,乡,镇,村",
    "江西-吉安市-泰和县": "乡,镇,村",
    "江西-吉安市-万安县": "乡,镇,村",
    "江西-吉安市-井冈山市": "乡,镇,村",
    "江西-宜春市-袁州区": "乡,镇,村",
    "江西-宜春市-奉新县": "赤岸镇,宋埠镇,干洲镇,澡下镇,会埠镇,罗市镇,上富镇,甘坊镇,仰山乡,澡溪乡,柳溪乡,村",
    "江西-宜春市-万载县": "乡,镇,村",
    "江西-宜春市-上高县": "乡,镇,村",
    "江西-宜春市-宜丰县": "乡,镇,村",
    "江西-宜春市-靖安县": "乡,镇,村",
    "江西-宜春市-丰城市": "白土镇,袁渡镇,张巷镇,杜市镇,淘沙镇,秀市镇,桥东镇,洛市镇,铁路镇,丽村镇,泉港镇,董家镇,隍城镇,上塘镇,筱塘乡,段潭乡,蕉坑乡,石江乡,荷湖乡,湖塘乡,同田乡",
    "江西-宜春市-樟树市": "乡,镇,村",
    "江西-宜春市-高安市": "乡,镇,村",
    "江西-抚州市-临川区": "乡,镇,村",
    "江西-抚州市-南城县": "乡,镇,村",
    "江西-抚州市-南丰县": "乡,镇,村",
    "江西-抚州市-崇仁县": "乡,镇,村",
    "江西-抚州市-宜黄县": "乡,镇,村",
    "江西-抚州市-金溪县": "乡,镇,村",
    "江西-抚州市-东乡县": "乡,镇,村",
    "江西-上饶市-信州区": "乡,镇,村",
    "江西-上饶市-上饶县": "乡,镇,村",
    "江西-上饶市-广丰县": "乡,镇,村",
    "江西-上饶市-玉山县": "临湖镇,必姆镇,横街镇,文成镇,下镇镇,紫湖镇,仙岩镇,南山乡,怀玉乡,下塘乡,三清乡,村",
    "江西-上饶市-弋阳县": "曹溪镇,漆工镇,樟树墩镇,南岩镇,朱坑镇,圭峰镇,叠山镇,港口镇,中畈乡,葛溪乡,湾里乡,清湖乡,旭光乡,村",
    "江西-上饶市-鄱阳县": "乡,镇,村",
    "江西-上饶市-万年县": "乡,镇,村",
    "江西-上饶市-婺源县": "乡,镇,村",
    "山东-济南市-历下区": "乡,镇,村",
    "山东-济南市-市中区": "乡,镇,村",
    "山东-济南市-槐荫区": "乡,镇,村",
    "山东-济南市-天桥区": "乡,镇,村",
    "山东-济南市-历城区": "乡,镇,村",
    "山东-济南市-长清区": "乡,镇,村",
    "山东-济南市-平阴县": "乡,镇,村",
    "山东-济南市-济阳县": "乡,镇,村",
    "山东-济南市-商河县": "乡,镇,村",
    "山东-济南市-章丘市": "乡,镇,村",
    "山东-青岛市-市南区": "",
    "山东-青岛市-市北区": "",
    "山东-青岛市-四方区": "",
    "山东-青岛市-黄岛区": "",
    "山东-青岛市-崂山区": "",
    "山东-青岛市-李沧区": "",
    "山东-青岛市-城阳区": "村",
    "山东-青岛市-开发区": "",
    "山东-青岛市-胶州市": "乡,镇,村",
    "山东-青岛市-即墨市": "乡,镇,村",
    "山东-青岛市-平度市": "乡,镇,村",
    "山东-青岛市-胶南市": "琅琊镇,大场镇,大村镇,六汪镇,海青镇,宝山镇,藏南镇,理务关镇,乡,村",
    "山东-淄博市-淄川区": "乡,镇,村",
    "山东-淄博市-张店区": "",
    "山东-淄博市-博山区": "乡,镇,村",
    "山东-淄博市-临淄区": "乡,镇,村",
    "山东-淄博市-周村区": "乡,镇,村",
    "山东-淄博市-桓台县": "邢家镇,荆家镇,马桥镇,陈庄镇,唐山镇,乡,村",
    "山东-淄博市-高青县": "乡,镇,村",
    "山东-枣庄市-市中区": "",
    "山东-枣庄市-薛城区": "",
    "山东-枣庄市-峄城区": "",
    "山东-枣庄市-台儿庄区": "",
    "山东-枣庄市-山亭区": "",
    "山东-枣庄市-滕州市": "东沙河镇,滨湖镇,鲍沟镇,官桥镇,柴胡店镇,羊庄镇,界河镇,龙阳镇,东郭镇,村",
    "山东-东营市-东营区": "乡,镇,村",
    "山东-东营市-河口区": "乡,镇,村",
    "山东-东营市-西城区": "乡,镇,村",
    "山东-东营市-东城区": "乡,镇,村",
    "山东-东营市-垦利县": "乡,镇,村",
    "山东-东营市-利津县": "乡,镇,村",
    "山东-东营市-广饶县": "丁庄镇,李鹊镇,大码头乡,陈官乡,村",
    "山东-烟台市-芝罘区": "乡,镇,村",
    "山东-烟台市-福山区": "乡,镇,村",
    "山东-烟台市-牟平区": "乡,镇,村",
    "山东-烟台市-莱山区": "乡,镇,村",
    "山东-烟台市-龙口市": "乡,镇,村",
    "山东-烟台市-莱阳市": "乡,镇,村",
    "山东-烟台市-莱州市": "乡,镇,村",
    "山东-烟台市-蓬莱市": "乡,镇,村",
    "山东-烟台市-招远市": "乡,镇,村",
    "山东-烟台市-栖霞市": "乡,镇,村",
    "山东-烟台市-海阳市": "盘石店镇,郭城镇,徐家店镇,发城镇,二十里店镇,大阎家镇,朱吴镇,乡,村",
    "山东-潍坊市-潍城区": "乡,村",
    "山东-潍坊市-寒亭区": "乡,村",
    "山东-潍坊市-坊子区": "乡,村",
    "山东-潍坊市-奎文区": "乡,村",
    "山东-潍坊市-临朐县": "五井镇,冶源镇,寺头镇,九山镇,沂山镇,柳山镇,上林镇,村",
    "山东-潍坊市-昌乐县": "乔官镇,鄌郚镇,红河镇,营邱镇,村",
    "山东-潍坊市-青州市": "弥河镇,庙子镇,邵庄镇,高柳镇,何官镇,东夏镇,村",
    "山东-潍坊市-诸城市": "贾悦镇,石桥子镇,百尺河镇,林家村镇,皇华镇,桃林乡,村",
    "山东-潍坊市-寿光市": "化龙镇,营里镇,台头镇,田柳镇,上口镇,侯镇镇,纪台镇,羊口镇,村",
    "山东-潍坊市-安丘市": "柘山镇,郚山镇,大盛镇,金冢子镇,石堆镇,辉渠镇,石埠子镇,官庄镇,村",
    "山东-潍坊市-高密市": "夏庄镇,姜庄镇,大牟家镇,村",
    "山东-潍坊市-昌邑市": "龙池镇,卜庄镇,北孟镇,下营镇",
    "山东-济宁市-市中区": "",
    "山东-济宁市-任城区": "",
    "山东-济宁市-微山县": "乡,镇,村",
    "山东-济宁市-鱼台县": "乡,镇,村",
    "山东-济宁市-金乡县": "羊山镇,胡集镇,肖云镇,鸡黍镇,司马镇,高河镇,化雨镇,卜集乡,兴隆乡,村",
    "山东-济宁市-嘉祥县": "乡,镇,村",
    "山东-济宁市-汶上县": "乡,镇,村",
    "山东-济宁市-梁山县": "乡,镇,村",
    "山东-济宁市-曲阜市": "吴村镇,陵城镇,南辛镇,息陬镇,董庄乡,防山乡,村",
    "山东-济宁市-兖州市": "乡,镇,村",
    "山东-济宁市-邹城市": "乡,镇,村",
    "山东-泰安市-泰山区": "乡,镇,村",
    "山东-泰安市-岱岳区": "乡,镇,村",
    "山东-泰安市-宁阳县": "泗店镇,伏山镇,蒋集镇,葛石镇,鹤山乡,东庄乡,乡饮乡",
    "山东-泰安市-东平县": "乡,镇,村",
    "山东-泰安市-新泰市": "东都镇,翟镇,泉沟镇,果都镇,天宝镇,楼德镇,禹村镇,宫里镇,石莱镇,放城镇,刘杜镇,汶南镇,龙廷镇,岳家庄乡,村",
    "山东-泰安市-肥城市": "乡,镇,村",
    "山东-威海市-环翠区": "草苗子镇,桥头镇,刘公岛,部队,乡,村",
    "山东-威海市-文登市": "乡,镇,村",
    "山东-威海市-荣成市": "乡,镇,村",
    "山东-威海市-乳山市": "乡,镇,村",
    "山东-日照市-东港区": "乡,镇,村",
    "山东-日照市-岚山区": "乡,镇,村",
    "山东-日照市-莒县": "乡,镇,村",
    "山东-莱芜市-莱城区": "乡,镇,村",
    "山东-临沂市-兰山区": "",
    "山东-临沂市-罗庄区": "",
    "山东-临沂市-河东区": "",
    "山东-临沂市-沂南县": "乡,镇,村",
    "山东-临沂市-郯城县": "李庄镇,禇墩镇,杨集镇,高峰头镇,庙山镇,新村乡,花园乡,归昌乡,红花乡,泉源乡,村",
    "山东-临沂市-沂水县": "乡,镇,村",
    "山东-临沂市-苍山县": "乡,镇,村",
    "山东-临沂市-费县": "乡,镇,村",
    "山东-临沂市-平邑县": "乡,镇,村",
    "山东-临沂市-莒南县": "乡,镇,村",
    "山东-临沂市-蒙阴县": "乡,镇,村",
    "山东-临沂市-临沭县": "乡,镇,村",
    "山东-德州市-德城区": "乡,镇,村",
    "山东-德州市-开发区": "乡,镇,村",
    "山东-德州市-陵县": "乡,镇,村",
    "山东-德州市-宁津县": "乡,镇,村",
    "山东-德州市-庆云县": "乡,镇,村",
    "山东-德州市-临邑县": "乡,镇,村",
    "山东-德州市-平原县": "乡,镇,村",
    "山东-德州市-夏津县": "乡,镇,村",
    "山东-德州市-武城县": "乡,镇,村",
    "山东-德州市-乐陵市": "乡,镇,村",
    "山东-德州市-禹城市": "乡,镇,村",
    "山东-聊城市-东昌府区": "乡,镇,村",
    "山东-聊城市-阳谷县": "乡,镇,村",
    "山东-聊城市-莘县": "张鲁回族镇,观城镇,古城镇,大张家镇,十八里铺镇,燕店镇,董杜庄镇,王奉镇,樱桃园镇,妹冢镇,魏庄乡,大王寨乡,俎店乡,徐庄乡,王庄集乡,柿子园乡,村",
    "山东-聊城市-东阿县": "乡,镇,村",
    "山东-聊城市-冠县": "乡,镇,村",
    "山东-聊城市-临清市": "康庄镇,魏湾镇,刘垓子镇,八岔路镇,潘庄镇,唐园镇,戴湾乡,尚店乡,村",
    "山东-滨州市-滨城区": "乡,镇,村",
    "山东-滨州市-惠民县": "桑落墅镇,淄角镇,胡集镇,麻店镇,魏集镇,何坊乡,皂户李乡,大年陈乡,村",
    "山东-滨州市-阳信县": "温店镇,流坡坞镇,劳店乡,水落坡乡,洋湖乡,村",
    "山东-滨州市-无棣县": "乡,镇,村",
    "山东-滨州市-沾化县": "乡,镇,村",
    "山东-滨州市-博兴县": "乡,镇,村",
    "山东-滨州市-邹平县": "",
    "山东-菏泽市-牡丹区": "乡,镇,村",
    "山东-菏泽市-曹县": "乡,镇,村",
    "山东-菏泽市-单县": "乡,镇,村",
    "山东-菏泽市-成武县": "乡,镇,村",
    "山东-菏泽市-巨野县": "乡,镇,村",
    "山东-菏泽市-郓城县": "乡,镇,村",
    "山东-菏泽市-鄄城县": "乡,镇,村",
    "山东-菏泽市-定陶县": "乡,镇,村",
    "山东-菏泽市-东明县": "乡,镇,村",
    "河南-郑州市-中原区": "乡,镇,村",
    "河南-郑州市-二七区": "乡,镇,村",
    "河南-郑州市-管城回族区": "乡,镇,村",
    "河南-郑州市-金水区": "乡,镇,村",
    "河南-郑州市-上街区": "乡,镇,村",
    "河南-郑州市-郑东新区": "乡,镇,村",
    "河南-郑州市-高新区": "乡,镇,村",
    "河南-郑州市-惠济区": "乡,镇,村",
    "河南-郑州市-中牟县": "乡,镇,村",
    "河南-郑州市-巩义市": "乡,镇,村",
    "河南-郑州市-荥阳市": "乡,镇,村",
    "河南-郑州市-新密市": "乡,镇,村",
    "河南-郑州市-新郑市": "乡,镇,村",
    "河南-郑州市-登封市": "乡,镇,村",
    "河南-开封市-龙亭区": "乡,镇,村",
    "河南-开封市-顺河回族区": "乡,镇,村",
    "河南-开封市-鼓楼区": "乡,镇,村",
    "河南-开封市-禹王台区": "乡,镇,村",
    "河南-开封市-金明区": "乡,镇,村",
    "河南-开封市-尉氏县": "乡,镇,村",
    "河南-开封市-开封县": "乡,镇,村",
    "河南-开封市-兰考县": "乡,镇,村",
    "河南-洛阳市-老城区": "乡,镇,村",
    "河南-洛阳市-西工区": "乡,镇,村",
    "河南-洛阳市-瀍河回族区": "乡,镇,村",
    "河南-洛阳市-涧西区": "乡,镇,村",
    "河南-洛阳市-吉利区": "乡,镇,村",
    "河南-洛阳市-洛龙区": "乡,镇,村",
    "河南-洛阳市-高新区": "乡,镇,村",
    "河南-平顶山市-新华区": "乡,镇,村",
    "河南-平顶山市-卫东区": "乡,镇,村",
    "河南-平顶山市-石龙区": "乡,镇,村",
    "河南-平顶山市-湛河区": "乡,镇,村",
    "河南-平顶山市-宝丰县": "乡,镇,村",
    "河南-平顶山市-叶县": "乡,镇,村",
    "河南-平顶山市-舞钢市": "乡,镇,村",
    "河南-平顶山市-汝州市": "乡,镇,村",
    "河南-安阳市-文峰区": "乡,镇,村",
    "河南-安阳市-北关区": "乡,镇,村",
    "河南-安阳市-殷都区": "乡,镇,村",
    "河南-安阳市-龙安区": "乡,镇,村",
    "河南-安阳市-汤阴县": "五陵,伏道,瓦岗,任固,菜园,古贤,乡,镇,村",
    "河南-安阳市-滑县": "乡,镇,村",
    "河南-安阳市-内黄县": "乡,镇,村",
    "河南-鹤壁市-鹤山区": "石林乡,姬家山乡,钜桥乡,村",
    "河南-鹤壁市-山城区": "石林乡,姬家山乡,钜桥乡,村",
    "河南-鹤壁市-淇滨区": "石林乡,姬家山乡,钜桥乡,村",
    "河南-鹤壁市-淇县": "乡,镇,村",
    "河南-新乡市-红旗区": "乡,镇,村",
    "河南-新乡市-卫滨区": "乡,镇,村",
    "河南-新乡市-凤泉区": "乡,镇,村",
    "河南-新乡市-牧野区": "乡,镇,村",
    "河南-新乡市-新乡县": "乡,镇,村",
    "河南-新乡市-获嘉县": "乡,镇,村",
    "河南-新乡市-原阳县": "乡,镇,村",
    "河南-新乡市-延津县": "乡,镇,村",
    "河南-新乡市-长垣县": "乡,镇,村",
    "河南-新乡市-辉县市": "乡,镇,村",
    "河南-焦作市-解放区": "乡,镇,村",
    "河南-焦作市-山阳区": "乡,镇,村",
    "河南-焦作市-沁阳市": "乡,镇,村",
    "河南-焦作市-孟州市": "乡,镇,村",
    "河南-濮阳市-华龙区": "乡,镇,村",
    "河南-濮阳市-南乐县": "乡,镇,村",
    "河南-濮阳市-范县": "乡,镇,村",
    "河南-濮阳市-台前县": "乡,镇,村",
    "河南-濮阳市-濮阳县": "乡,镇,村",
    "河南-许昌市-魏都区": "乡,镇,村",
    "河南-许昌市-许昌县": "乡,镇,村",
    "河南-许昌市-鄢陵县": "乡,镇,村",
    "河南-许昌市-襄城县": "乡,镇,村",
    "河南-许昌市-禹州市": "乡,镇,村",
    "河南-许昌市-长葛市": "乡,镇,村",
    "河南-漯河市-源汇区": "乡,村",
    "河南-漯河市-郾城区": "乡,村",
    "河南-漯河市-召陵区": "乡,村",
    "河南-漯河市-临颍县": "乡,镇,村",
    "河南-三门峡市-湖滨区": "乡,镇,村",
    "河南-三门峡市-渑池县": "乡,镇,村",
    "河南-三门峡市-义马市": "乡,镇,村",
    "河南-三门峡市-灵宝市": "乡,镇,村",
    "河南-南阳市-宛城区": "乡,镇,村",
    "河南-南阳市-卧龙区": "乡,镇,村",
    "河南-商丘市-梁园区": "乡,镇,村",
    "河南-商丘市-睢阳区": "乡,镇,村",
    "河南-商丘市-民权县": "乡,镇,村",
    "河南-商丘市-睢县": "乡,镇,村",
    "河南-商丘市-宁陵县": "乡,镇,村",
    "河南-商丘市-柘城县": "乡,镇,村",
    "河南-商丘市-虞城县": "乡,镇,村",
    "河南-商丘市-夏邑县": "乡,镇,村",
    "河南-商丘市-永城市": "乡,镇,村",
    "河南-信阳市-浉河区": "乡,镇,村",
    "河南-信阳市-平桥区": "乡,镇,村",
    "河南-信阳市-罗山县": "乡,镇,村",
    "河南-信阳市-光山县": "乡,镇,村",
    "河南-信阳市-新县": "乡,镇,村",
    "河南-信阳市-商城县": "乡,镇,村",
    "河南-信阳市-固始县": "乡,镇,村",
    "河南-信阳市-潢川县": "乡,镇,村",
    "河南-信阳市-淮滨县": "乡,镇,村",
    "河南-信阳市-息县": "乡,镇,村",
    "河南-周口市-川汇区": "乡,镇,村",
    "河南-驻马店市-驿城区": "乡,镇,村",
    "河南-驻马店市-西平县": "乡,镇,村",
    "河南-驻马店市-平舆县": "乡,镇,村",
    "河南-驻马店市-遂平县": "乡,镇,村",
    "河南-省直辖-济源市": "乡,镇,村",
    "湖北-武汉市-江岸区": "",
    "湖北-武汉市-江汉区": "",
    "湖北-武汉市-硚口区": "",
    "湖北-武汉市-汉阳区": "",
    "湖北-武汉市-武昌区": "",
    "湖北-武汉市-青山区": "",
    "湖北-武汉市-洪山区": "",
    "湖北-武汉市-东西湖区": "",
    "湖北-武汉市-汉南区": "东荆,湘口,邓南",
    "湖北-武汉市-蔡甸区": "",
    "湖北-武汉市-江夏区": "",
    "湖北-武汉市-黄陂区": "祁家湾,横店,罗汉寺,滠口,六指,天河,武湖,王家河,长轩岭,李家集,姚家集,蔡家榨,三里镇,蔡店乡,木兰乡",
    "湖北-武汉市-新洲区": "阳逻,仓埠,汪集,李集,三店,潘塘,旧街,双柳,涨渡湖,辛冲镇,徐古镇,凤凰镇",
    "湖北-黄石市-黄石港区": "",
    "湖北-黄石市-西塞山区": "",
    "湖北-黄石市-下陆区": "",
    "湖北-黄石市-铁山区": "",
    "湖北-黄石市-阳新县": "乡,镇,村",
    "湖北-黄石市-大冶市": "乡,镇,村",
    "湖北-十堰市-茅箭区": "乡,镇,村",
    "湖北-十堰市-张湾区": "乡,镇,村",
    "湖北-十堰市-城区": "乡,镇,村",
    "湖北-十堰市-丹江口市": "乡,镇,村",
    "湖北-宜昌市-西陵区": "乡,镇,村",
    "湖北-宜昌市-伍家岗区": "乡,镇,村",
    "湖北-宜昌市-点军区": "乡,镇,村",
    "湖北-宜昌市-夷陵区": "乡,镇,村",
    "湖北-宜昌市-开发区": "乡,镇,村",
    "湖北-宜昌市-宜都市": "红花套镇,高坝洲镇,聂家河镇,松木坪镇,姚家店乡,五眼泉乡,潘家湾土家族乡,王家畈乡,村",
    "湖北-宜昌市-当阳市": "乡,镇,村",
    "湖北-宜昌市-枝江市": "乡,镇,村",
    "湖北-襄樊市-襄城区": "乡,镇,村",
    "湖北-襄樊市-樊城区": "乡,镇,村",
    "湖北-襄樊市-南漳县": "乡,镇,村",
    "湖北-襄樊市-谷城县": "冷集镇,五山镇,紫金镇,南河镇,茨河镇,赵湾乡,村",
    "湖北-襄樊市-保康县": "乡,镇,村",
    "湖北-襄樊市-老河口市": "乡,镇,村",
    "湖北-襄樊市-枣阳市": "乡,镇,村",
    "湖北-襄樊市-宜城市": "乡,镇,村",
    "湖北-鄂州市-梁子湖区": "乡,镇,村",
    "湖北-鄂州市-华容区": "乡,镇,村",
    "湖北-鄂州市-鄂城区": "乡,镇,村",
    "湖北-荆门市-东宝区": "乡,镇,村",
    "湖北-荆门市-掇刀区": "乡,镇,村",
    "湖北-荆门市-京山县": "乡,镇,村",
    "湖北-荆门市-沙洋县": "乡,镇,村",
    "湖北-荆门市-钟祥市": "乡,镇,村",
    "湖北-孝感市-孝南区": "乡,镇,村",
    "湖北-孝感市-应城市": "乡,镇,村",
    "湖北-孝感市-安陆市": "乡,镇,村",
    "湖北-孝感市-汉川市": "杨林沟镇,田二河镇,垌冢镇,新堰镇,庙头镇,刘家隔镇,麻河镇,新河镇,回龙镇,马鞍乡,里潭乡,西江乡,南河乡,湾潭乡,韩集乡,村",
    "湖北-荆州市-沙市区": "乡,镇,村",
    "湖北-荆州市-荆州区": "乡,镇,村",
    "湖北-荆州市-公安县": "乡,镇,村",
    "湖北-荆州市-监利县": "乡,镇,村",
    "湖北-荆州市-石首市": "乡,镇,村",
    "湖北-荆州市-洪湖市": "乡,镇,村",
    "湖北-荆州市-松滋市": "乡,镇,村",
    "湖北-黄冈市-黄州区": "乡,镇,村",
    "湖北-黄冈市-团风县": "乡,镇,村",
    "湖北-黄冈市-红安县": "乡,镇,村",
    "湖北-黄冈市-罗田县": "乡,镇,村",
    "湖北-黄冈市-英山县": "乡,镇,村",
    "湖北-黄冈市-浠水县": "乡,镇,村",
    "湖北-黄冈市-蕲春县": "乡,镇,村",
    "湖北-黄冈市-黄梅县": "乡,镇,村",
    "湖北-黄冈市-麻城市": "乡,镇,村",
    "湖北-黄冈市-武穴市": "乡,镇,村",
    "湖北-咸宁市-咸安区": "乡,镇,村",
    "湖北-咸宁市-温泉城区": "乡,镇,村",
    "湖北-咸宁市-嘉鱼县": "乡,镇,村",
    "湖北-咸宁市-通城县": "乡,镇,村",
    "湖北-咸宁市-崇阳县": "乡,镇,村",
    "湖北-咸宁市-通山县": "乡,镇,村",
    "湖北-咸宁市-赤壁市": "乡,镇,村",
    "湖北-随州市-曾都区": "乡,镇,村,队,组",
    "湖北-随州市-广水市": "乡,镇,村",
    "湖北-随州市-随县": "乡,镇,村,队,组",
    "湖北-恩施州-恩施市": "乡,镇,村",
    "湖北-恩施州-利川市": "乡,镇,村",
    "湖北-省直辖-仙桃市": "乡,镇,村",
    "湖北-省直辖-潜江市": "竹根滩镇,泽口镇,办事处,总口镇,渔洋镇,王场镇,村,五七,向阳,积玉口镇,高石啤镇,运粮湖农场,浩口镇,后湖农场,张金镇,铁匠沟乡,老新镇,徐李镇,龙新镇,徐李镇,龙湾镇,周矶",
    "湖北-省直辖-天门市": "拖市镇,张港镇,蒋场镇,汪场镇,渔薪镇,黄潭镇,横林镇,彭市镇,麻洋镇,多祥镇,马湾镇,卢市镇,小板镇,九真镇,皂市镇,胡市镇,石河镇,佛子山镇,净潭乡,村",
    "湖南-长沙市-芙蓉区": "东方红镇,三叉矾,黄花塘镇,洪山桥,捞刀河镇,田心桥,水渡河,黄花镇,江背镇,路口镇,金井镇,长桥,泉塘,黑石铺,凤凰工业园,暮云镇",
    "湖南-长沙市-天心区": "东方红镇,三叉矾,黄花塘镇,洪山桥,捞刀河镇,田心桥,水渡河,黄花镇,江背镇,路口镇,金井镇,长桥,泉塘,黑石铺,凤凰工业园,暮云镇",
    "湖南-长沙市-岳麓区": "东方红镇,三叉矾,黄花塘镇,洪山桥,捞刀河镇,田心桥,水渡河,黄花镇,江背镇,路口镇,金井镇,长桥,泉塘,黑石铺,凤凰工业园,暮云镇",
    "湖南-长沙市-开福区": "东方红镇,三叉矾,黄花塘镇,洪山桥,捞刀河镇,田心桥,水渡河,黄花镇,江背镇,路口镇,金井镇,长桥,泉塘,黑石铺,凤凰工业园,暮云镇",
    "湖南-长沙市-雨花区": "东方红镇,三叉矾,黄花塘镇,洪山桥,捞刀河镇,田心桥,水渡河,黄花镇,江背镇,路口镇,金井镇,长桥,泉塘,黑石铺,凤凰工业园,暮云镇",
    "湖南-长沙市-望城县": "桥驿镇,丁字镇,茶亭镇,东城镇,铜官镇,靖港镇,乔口镇,雨敞坪镇,白箬铺镇,格塘乡,新康乡,黄金乡,村",
    "湖南-长沙市-宁乡县": "乡,镇,村",
    "湖南-长沙市-浏阳市": "乡,镇,村",
    "湖南-株洲市-荷塘区": "乡,镇,村",
    "湖南-株洲市-芦淞区": "乡,镇,村",
    "湖南-株洲市-石峰区": "乡,镇,村",
    "湖南-株洲市-天元区": "乡,镇,村",
    "湖南-株洲市-株洲县": "乡,镇,村",
    "湖南-株洲市-攸县": "乡,镇,村",
    "湖南-株洲市-茶陵县": "乡,镇,村",
    "湖南-株洲市-炎陵县": "乡,镇,村",
    "湖南-株洲市-醴陵市": "南桥镇,富里镇,白兔潭镇,王坊镇,东富镇,泗汾镇,沈潭镇,船湾镇,大障镇,贺家桥镇,栗山坝镇,神福港镇,均楚镇,石亭镇,仙霞镇,黄獭嘴镇；东堡乡,孙家湾乡,清水江乡,嘉树乡,板杉乡,新阳乡,官庄乡,枫林市乡,村",
    "湖南-湘潭市-雨湖区": "乡,镇,村",
    "湖南-湘潭市-岳塘区": "乡,镇,村",
    "湖南-湘潭市-湘潭县": "乡,镇,村",
    "湖南-湘潭市-湘乡市": "乡,镇,村",
    "湖南-衡阳市-珠晖区": "乡,镇,村",
    "湖南-衡阳市-雁峰区": "乡,镇,村",
    "湖南-衡阳市-石鼓区": "乡,镇,村",
    "湖南-衡阳市-蒸湘区": "乡,镇,村",
    "湖南-衡阳市-南岳区": "乡,镇,村",
    "湖南-衡阳市-衡阳县": "集兵镇,杉桥镇,井头镇,演陂镇,金兰镇,洪市镇,曲兰镇,金溪镇,界牌镇,渣江镇,三湖镇,台源镇,樟木乡,岣嵝乡,岘山乡,关市乡,栏栊乡,库宗乡,大安乡,溪江乡,石市乡,长安乡,板市乡,樟树乡,潮江乡,村",
    "湖南-衡阳市-耒阳市": "乡,镇,村",
    "湖南-邵阳市-双清区": "乡,镇,村",
    "湖南-邵阳市-大祥区": "乡,镇,村",
    "湖南-邵阳市-北塔区": "乡,镇,村",
    "湖南-邵阳市-邵东县": "乡,镇,村",
    "湖南-岳阳市-岳阳楼区": "乡,镇,村",
    "湖南-岳阳市-云溪区": "乡,镇,村",
    "湖南-岳阳市-岳阳县": "乡,镇,村",
    "湖南-岳阳市-湘阴县": "乡,镇,村",
    "湖南-岳阳市-平江县": "乡,镇,村",
    "湖南-岳阳市-汨罗市": "乡,镇,村",
    "湖南-岳阳市-临湘市": "乡,镇,村",
    "湖南-常德市-武陵区": "乡,镇,村",
    "湖南-常德市-鼎城区": "乡,镇,村",
    "湖南-常德市-安乡县": "乡,镇,村",
    "湖南-常德市-汉寿县": "乡,镇,村",
    "湖南-常德市-澧县": "乡,镇,村",
    "湖南-常德市-临澧县": "乡,镇,村",
    "湖南-常德市-桃源县": "乡,镇,村",
    "湖南-常德市-石门县": "乡,镇,村",
    "湖南-常德市-津市市": "乡,镇,村",
    "湖南-张家界市-永定区": "乡,镇,村",
    "湖南-张家界市-武陵源区": "乡,镇,村",
    "湖南-张家界市-慈利县": "乡,镇,村",
    "湖南-益阳市-资阳区": "乡,镇,村",
    "湖南-益阳市-赫山区": "乡,镇,村",
    "湖南-益阳市-南县": "乡,镇,村",
    "湖南-益阳市-沅江市": "乡,镇,村",
    "湖南-郴州市-北湖区": "乡,镇,村",
    "湖南-郴州市-苏仙区": "乡,镇,村",
    "湖南-郴州市-桂阳县": "乡,镇,村",
    "湖南-郴州市-宜章县": "乡,镇,村",
    "湖南-郴州市-永兴县": "乡,镇,村",
    "湖南-郴州市-临武县": "乡,镇,村",
    "湖南-郴州市-桂东县": "乡,镇,村",
    "湖南-郴州市-资兴市": "乡,镇,村",
    "湖南-永州市-零陵区": "乡,镇,村",
    "湖南-永州市-冷水滩区": "乡,镇,村",
    "湖南-永州市-祁阳县": "乡,镇,村",
    "湖南-永州市-东安县": "乡,镇,村",
    "湖南-永州市-双牌县": "乡,镇,村",
    "湖南-永州市-道县": "乡,镇,村",
    "湖南-永州市-宁远县": "乡,镇,村",
    "湖南-永州市-蓝山县": "乡,镇,村",
    "湖南-永州市-新田县": "乡,镇,村",
    "湖南-怀化市-鹤城区": "乡,镇,村",
    "湖南-娄底市-娄星区": "乡,镇,村",
    "湖南-湘西州-吉首市": "乡,镇,村",
    "湖南-湘西州-凤凰县": "乡,镇,村",
    "湖南-湘西州-花垣县": "乡,镇,村",
    "湖南-湘西州-古丈县": "乡,镇,村",
    "湖南-湘西州-永顺县": "乡,镇,村",
    "湖南-湘西州-龙山县": "乡,镇,村",
    "广东-广州市-南沙区": "",
    "广东-广州市-荔湾区": "",
    "广东-广州市-越秀区": "",
    "广东-广州市-海珠区": "",
    "广东-广州市-天河区": "",
    "广东-广州市-萝岗区": "",
    "广东-广州市-白云区": "",
    "广东-广州市-黄埔区": "",
    "广东-广州市-番禺区": "新垦,万倾沙,村,乡",
    "广东-广州市-花都区": "梯面镇,北兴镇,碳步镇,赤泥镇,乡,村",
    "广东-广州市-增城市": "",
    "广东-广州市-从化市": "",
    "广东-深圳市-罗湖区": "高尔夫球会",
    "广东-深圳市-福田区": "高尔夫球会",
    "广东-深圳市-南山区": "高尔夫球会",
    "广东-深圳市-宝安区": "高尔夫球会",
    "广东-深圳市-龙岗区": "高尔夫球会,大鹏,葵角,南澳镇",
    "广东-深圳市-盐田区": "高尔夫球会",
    "广东-珠海市-香洲区": "横琴镇,部队,乡,村",
    "广东-珠海市-斗门区": "横琴镇,部队,乡,村",
    "广东-珠海市-金湾区": "横琴镇,部队,乡,村",
    "广东-汕头市-金平区": "乡,村",
    "广东-汕头市-龙湖区": "乡,村",
    "广东-汕头市-濠江区": "乡,村",
    "广东-汕头市-潮阳区": "乡,村",
    "广东-汕头市-潮南区": "乡,村",
    "广东-汕头市-澄海区": "乡,村",
    "广东-佛山市-禅城区": "乡,村",
    "广东-佛山市-南海区": "乡,村",
    "广东-佛山市-顺德区": "",
    "广东-佛山市-高明区": "乡,村",
    "广东-江门市-蓬江区": "乡,村",
    "广东-江门市-江海区": "乡,村",
    "广东-江门市-新会区": "乡,村",
    "广东-江门市-台山市": "赤溪,川岛,海宴,汶村,三合,北陡,深井,白沙,乡,村",
    "广东-江门市-开平市": "赤水,金鸡,蚬冈,大沙,马冈,龙胜,乡,村",
    "广东-江门市-恩平市": "",
    "广东-湛江市-赤坎区": "乡,镇,村",
    "广东-湛江市-霞山区": "乡,镇,村",
    "广东-湛江市-麻章区": "乡,镇,村",
    "广东-湛江市-坡头区": "乡,镇,村",
    "广东-湛江市-遂溪县": "乡,镇,村",
    "广东-湛江市-廉江市": "乡,镇,村",
    "广东-湛江市-吴川市": "乡,镇,村",
    "广东-茂名市-茂南区": "乡,镇,村",
    "广东-茂名市-茂港区": "乡,镇,村",
    "广东-茂名市-电白县": "乡,镇,村",
    "广东-茂名市-高州市": "乡,镇,村",
    "广东-茂名市-化州市": "乡,镇,村",
    "广东-茂名市-信宜市": "乡,镇,村",
    "广东-肇庆市-端州区": "",
    "广东-肇庆市-鼎湖区": "",
    "广东-肇庆市-封开县": "南丰,长安,金装,白垢,莲都,渔涝,杏花,罗董,长岗,平凤,大洲,都平,江川,大玉口,河儿口,乡,村",
    "广东-肇庆市-德庆县": "马圩,高良,莫村,永丰,武垄,播植,凤村,九市,悦城,回龙,乡,村",
    "广东-肇庆市-四会市": "乡,村",
    "广东-惠州市-惠城区": "潼湖,潼侨,沥林,马安,横沥,芦洲,乡,村",
    "广东-惠州市-惠阳区": "霞涌,秋长,良井,平潭,乡,村",
    "广东-惠州市-博罗县": "乡,村",
    "广东-惠州市-惠东县": "安墩,宝口,高潭,多祝,稔山,铁涌,平海,白花,梁化,白盆珠,乡,村",
    "广东-梅州市-梅江区": "乡,镇,村",
    "广东-梅州市-梅县": "乡,镇,村",
    "广东-梅州市-大埔县": "乡,镇,村",
    "广东-梅州市-丰顺县": "乡,镇,村",
    "广东-梅州市-五华县": "郭田,双华,棉洋,梅林,龙村,横陂,华阳,周江,长布,潭下,岐岭,转水,乡,村",
    "广东-梅州市-平远县": "乡,镇,村",
    "广东-梅州市-蕉岭县": "乡,镇,村",
    "广东-梅州市-兴宁市": "乡,镇,村",
    "广东-汕尾市-城区": "乡,镇,村",
    "广东-汕尾市-海丰县": "黄羌,平东,大湖,赤坑,陶河,联安,小漠,鹅埠,赤石,鲘门,乡,村",
    "广东-河源市-源城区": "乡,村",
    "广东-河源市-东源县": "乡,镇,村",
    "广东-阳江市-江城区": "乡,村",
    "广东-阳江市-阳西县": "程村,溪头,上洋,沙扒,儒洞,新圩,乡,村",
    "广东-阳江市-阳东县": "大沟,东平,雅韶,塘坪,大八,麻汕,那龙,新洲,乡,村",
    "广东-阳江市-阳春市": "河塱,松柏,陂面,合水,春湾,河口,潭水,八甲,双窖,永宁,圭岗,石望,马水,三甲,乡,村",
    "广东-清远市-清城区": "乡,村",
    "广东-清远市-佛冈县": "乡,镇,村",
    "广东-清远市-清新县": "飞来峡,山塘,禾云,浸潭,石潭,乡,村",
    "广东-清远市-英德市": "乡,镇,村",
    "广东-东莞市-东莞市": "",
    "广东-中山市-中山市": "",
    "广东-潮州市-湘桥区": "乡,村",
    "广东-潮州市-枫溪区": "乡,村",
    "广东-潮州市-潮安县": "乡,镇,村",
    "广东-潮州市-饶平县": "乡,镇,村",
    "广东-揭阳市-榕城区": "",
    "广东-揭阳市-东山区": "",
    "广东-揭阳市-揭东县": "云路镇,玉窖镇,登岗镇,白塔镇,龙尾镇,桂岭镇,玉湖镇,埔田镇,乡,村",
    "广东-揭阳市-揭西县": "龙潭镇,南山镇,五经富镇,京溪园镇,灰寨镇,塔头镇,东园镇,棉湖镇,金和镇,大溪镇,钱坑镇,五云镇,上砂镇,良田乡,村",
    "广东-揭阳市-普宁市": "麒麟镇,南径镇,南溪镇,云落镇,普侨区,乡,村",
    "广东-云浮市-云城区": "都杨,思劳,乡,村",
    "广东-云浮市-新兴县": "新城,水台,稔村,六祖,大江,河头,天堂,里洞,乡,村",
    "广东-云浮市-郁南县": "宋桂,大湾,建城,千官,通门,桂圩,平台,宝珠,历洞,大方,南江口,乡,镇",
    "广西-南宁市-兴宁区": "",
    "广西-南宁市-青秀区": "",
    "广西-南宁市-西乡塘区": "",
    "广西-南宁市-江南区": "",
    "广西-南宁市-良庆区": "",
    "广西-南宁市-邕宁区": "",
    "广西-南宁市-武鸣县": "太平镇,双桥镇,宁武镇,锣圩镇,仙湖镇,府城镇,陆斡镇,两江镇,罗波镇,灵马镇,甘圩镇,马头镇",
    "广西-南宁市-隆安县": "乡,镇,村",
    "广西-南宁市-马山县": "乡,镇,村",
    "广西-南宁市-宾阳县": "黎塘镇,甘棠镇,思陇镇,新圩镇,邹圩镇,大桥镇,武陵镇,中华镇,古辣镇,露圩镇,王灵镇,和吉镇,洋桥镇,陈平乡",
    "广西-南宁市-横县": "乡,镇,村",
    "广西-柳州市-城中区": "",
    "广西-柳州市-鱼峰区": "",
    "广西-柳州市-柳南区": "",
    "广西-柳州市-柳北区": "",
    "广西-柳州市-柳江县": "乡,镇,村",
    "广西-柳州市-鹿寨县": "乡,镇,村",
    "广西-柳州市-融安县": "乡,镇,村",
    "广西-柳州市-融水苗族自治县": "乡,镇,村",
    "广西-桂林市-秀峰区": "奇峰镇,雁山镇",
    "广西-桂林市-叠彩区": "奇峰镇,雁山镇",
    "广西-桂林市-象山区": "奇峰镇,雁山镇",
    "广西-桂林市-七星区": "奇峰镇,雁山镇",
    "广西-桂林市-雁山区": "奇峰镇,雁山镇",
    "广西-桂林市-临桂县": "乡,镇,村",
    "广西-桂林市-灵川县": "乡,镇,村",
    "广西-桂林市-荔浦县": "乡,镇,村",
    "广西-梧州市-万秀区": "乡,镇,村",
    "广西-梧州市-蝶山区": "乡,镇,村",
    "广西-梧州市-长洲区": "乡,镇,村",
    "广西-梧州市-苍梧县": "乡,镇,村",
    "广西-梧州市-藤县": "乡,镇,村",
    "广西-梧州市-蒙山县": "乡,镇,村",
    "广西-梧州市-岑溪市": "乡,镇,村",
    "广西-北海市-海城区": "",
    "广西-北海市-银海区": "",
    "广西-北海市-合浦县": "",
    "广西-防城港市-港口区": "乡,镇,村",
    "广西-防城港市-防城区": "乡,镇,村",
    "广西-防城港市-东兴市": "",
    "广西-钦州市-钦南区": "乡,镇,村",
    "广西-钦州市-钦北区": "乡,镇,村",
    "广西-钦州市-灵山县": "乡,镇,村",
    "广西-贵港市-港北区": "乡,镇,村",
    "广西-贵港市-港南区": "乡,镇,村",
    "广西-贵港市-覃塘区": "乡,镇,村",
    "广西-贵港市-平南县": "乡,镇,村",
    "广西-贵港市-桂平市": "乡,镇,村",
    "广西-玉林市-玉州区": "",
    "广西-玉林市-容县": "杨梅镇,灵山镇,六王镇,杨村镇,县底镇,自良镇,松山镇,罗江镇,石头镇,石寨镇,容西乡,十里乡,浪水乡",
    "广西-玉林市-陆川县": "乡,镇,村",
    "广西-玉林市-博白县": "乡,镇,村",
    "广西-玉林市-北流市": "乡,镇,村",
    "广西-百色市-右江区": "乡,镇,村",
    "广西-百色市-平果县": "乡,镇,村",
    "广西-百色市-德保县": "乡,镇,村",
    "广西-贺州市-八步区": "",
    "广西-贺州市-钟山县": "乡,镇,村",
    "广西-河池市-金城江区": "",
    "广西-河池市-南丹县": "乡,镇,村",
    "广西-河池市-凤山县": "乡,镇,村",
    "广西-河池市-罗城仫佬族自治县": "乡,镇,村",
    "广西-河池市-环江毛南族自治县": "乡,镇,村",
    "广西-河池市-都安瑶族自治县": "乡,镇,村",
    "广西-河池市-大化瑶族自治县": "乡,镇,村",
    "广西-河池市-宜州市": "乡,镇,村",
    "广西-来宾市-兴宾区": "乡,镇,村",
    "广西-来宾市-忻城县": "乡,镇,村",
    "广西-来宾市-象州县": "乡,镇,村",
    "广西-来宾市-武宣县": "乡,镇,村",
    "广西-来宾市-金秀瑶族自治县": "乡,镇,村",
    "广西-来宾市-合山市": "乡,镇,村",
    "海南-海口市-秀英区": "乡,镇,村",
    "海南-海口市-龙华区": "乡,镇,村",
    "海南-海口市-美兰区": "乡,镇,村",
    "海南-海口市-琼山区": "乡,镇,村",
    "海南-三亚市-三亚市": "乡,镇,村",
    "海南-省直辖-琼海市": "乡,镇,村",
    "海南-省直辖-儋州市": "乡,镇,村",
    "海南-省直辖-文昌市": "乡,镇,村",
    "海南-省直辖-万宁市": "乡,镇,村",
    "海南-省直辖-东方市": "乡,镇,村",
    "海南-省直辖-定安县": "乡,镇,村",
    "海南-省直辖-屯昌县": "乡,镇,村",
    "海南-省直辖-陵水黎族自治县": "乡,镇,村",
    "重庆-重庆市-渝中区": "乡,镇,村",
    "重庆-重庆市-大渡口区": "乡,镇,村",
    "重庆-重庆市-江北区": "乡,镇,村",
    "重庆-重庆市-沙坪坝区": "乡,镇,村",
    "重庆-重庆市-九龙坡区": "乡,镇,村",
    "重庆-重庆市-南岸区": "乡,镇,村",
    "重庆-重庆市-北碚区": "乡,镇,村",
    "重庆-重庆市-万盛区": "乡,镇,村",
    "重庆-重庆市-双桥区": "乡,镇,村",
    "重庆-重庆市-渝北区": "乡,镇,村",
    "重庆-重庆市-巴南区": "乡,镇,村",
    "重庆-重庆市-万州区": "乡,镇,村",
    "重庆-重庆市-涪陵区": "乡,镇,村",
    "重庆-重庆市-黔江区": "乡,镇,村",
    "重庆-重庆市-长寿区": "乡,镇,村",
    "重庆-重庆市-江津区": "乡,镇,村",
    "重庆-重庆市-合川区": "乡,镇,村",
    "重庆-重庆市-永川区": "乡,镇,村",
    "重庆-重庆市-南川区": "乡,镇,村",
    "重庆-重庆市-綦江县": "乡,镇,村",
    "重庆-重庆市-潼南县": "乡,镇,村",
    "重庆-重庆市-铜梁县": "乡,镇,村",
    "重庆-重庆市-大足县": "乡,镇,村",
    "重庆-重庆市-荣昌县": "乡,镇,村",
    "重庆-重庆市-璧山县": "乡,镇,村",
    "重庆-重庆市-梁平县": "乡,镇,村",
    "重庆-重庆市-丰都县": "乡,镇,村",
    "重庆-重庆市-垫江县": "乡,镇,村",
    "重庆-重庆市-武隆县": "乡,镇,村",
    "重庆-重庆市-忠县": "乡,镇,村",
    "重庆-重庆市-开县": "乡,镇,村",
    "重庆-重庆市-云阳县": "乡,镇,村",
    "重庆-重庆市-石柱土家族自治县": "乡,镇,村",
    "四川-成都市-锦江区": "乡,村",
    "四川-成都市-青羊区": "乡,村",
    "四川-成都市-金牛区": "乡,村",
    "四川-成都市-武侯区": "乡,村",
    "四川-成都市-成华区": "乡,村",
    "四川-成都市-龙泉驿区": "乡,村",
    "四川-成都市-青白江区": "乡,村",
    "四川-成都市-新都区": "乡,村",
    "四川-成都市-温江区": "乡,村",
    "四川-成都市-金堂县": "三星镇,清江镇,官仓镇,淮口镇,白果镇,五凤镇,高板镇,三溪镇,福兴镇,金龙镇,赵家镇,竹篙镇,广兴镇,隆盛镇,转龙镇,土桥镇,云合镇,又新镇,栖贤乡,平桥乡",
    "四川-成都市-大邑县": "新场镇,悦来镇,花水湾镇,西岭镇,斜源镇,董场镇,三岔镇,上安镇,苏家镇,青霞镇,蔡场镇,雾山乡,金星乡,鹤鸣乡",
    "四川-成都市-新津县": "乡,镇,村",
    "四川-成都市-都江堰市": "乡,镇,村",
    "四川-成都市-彭州市": "龙门山镇,新兴镇,九尺镇,濛阳镇,通济镇,丹景山镇,隆丰镇,敖平镇,磁峰镇,桂花镇,军乐镇,三界镇,小鱼洞镇,红岩镇,升平镇,白鹿镇,葛仙山镇",
    "四川-成都市-崇州市": "崇阳镇,三江镇,江源镇,廖家镇,元通镇,观胜镇,怀远镇,三郎镇,街子镇,文井江镇,王场镇,白头镇,道明镇,大划镇,梓潼镇,桤泉镇,公议乡,鸡冠山乡,济协乡,燎原乡,集贤乡",
    "四川-自贡市-自流井区": "乡,镇,村",
    "四川-自贡市-贡井区": "乡,镇,村",
    "四川-自贡市-大安区": "乡,镇,村",
    "四川-自贡市-沿滩区": "乡,镇,村",
    "四川-自贡市-荣县": "乡,镇,村",
    "四川-自贡市-富顺县": "乡,镇,村",
    "四川-攀枝花市-东区": "乡,镇,村",
    "四川-攀枝花市-米易县": "乡,镇,村",
    "四川-泸州市-江阳区": "乡,镇,村",
    "四川-泸州市-纳溪区": "乡,镇,村",
    "四川-泸州市-龙马潭区": "乡,镇,村",
    "四川-泸州市-泸县": "乡,镇,村",
    "四川-泸州市-合江县": "乡,镇,村",
    "四川-泸州市-叙永县": "乡,镇,村",
    "四川-泸州市-古蔺县": "乡,镇,村",
    "四川-德阳市-旌阳区": "乡,镇,村",
    "四川-德阳市-中江县": "乡,镇,村",
    "四川-德阳市-罗江县": "乡,镇,村",
    "四川-德阳市-广汉市": "三水镇,连山镇,南兴镇,向阳镇,小汉镇,金轮镇,新丰镇,兴隆镇,新华镇,和兴镇,松林镇,新平镇,南丰镇,西高镇",
    "四川-德阳市-什邡市": "元石镇,马祖镇,隐丰镇,马井镇,蓥华镇,南泉镇,湔氐镇,红白镇,八角镇",
    "四川-德阳市-绵竹市": "剑南镇,东北镇,西南镇,兴隆镇,九龙镇,遵道镇,拱星镇,广济镇,金花镇,玉泉镇,板桥镇,孝德镇,齐天镇,什地镇,绵远镇,清平乡,天池乡",
    "四川-绵阳市-涪城区": "乡,镇,村",
    "四川-绵阳市-游仙区": "乡,镇,村",
    "四川-绵阳市-高新区": "乡,镇,村",
    "四川-绵阳市-三台县": "乡,镇,村",
    "四川-绵阳市-盐亭县": "乡,镇,村",
    "四川-绵阳市-安县": "桑枣镇,花荄镇,塔水镇,秀水镇,河清镇,永安镇,永河镇,睢水镇,清泉镇,宝林镇,沸水镇,晓坝镇,乐兴镇,千佛镇,兴仁乡,高川乡,迎新乡",
    "四川-绵阳市-梓潼县": "乡,镇,村",
    "四川-绵阳市-平武县": "乡,镇,村",
    "四川-绵阳市-江油市": "乡,镇,村",
    "四川-广元市-利州区": "乡,镇,村",
    "四川-广元市-朝天区": "乡,镇,村",
    "四川-广元市-青川县": "乡,镇,村",
    "四川-广元市-苍溪县": "乡,镇,村",
    "四川-遂宁市-船山区": "乡,镇,村",
    "四川-遂宁市-安居区": "乡,镇,村",
    "四川-遂宁市-蓬溪县": "乡,镇,村",
    "四川-遂宁市-射洪县": "大榆镇,广兴镇,金华镇,太乙镇,金家镇,复兴镇,天仙镇,仁和镇,青岗镇,洋溪镇,香山镇,明星镇,涪西镇,陈古镇,凤来镇,潼射镇,曹碑镇,官升镇,乡,村",
    "四川-遂宁市-大英县": "乡,镇,村",
    "四川-内江市-市中区": "乡,镇,村",
    "四川-内江市-东兴区": "乡,镇,村",
    "四川-内江市-威远县": "乡,镇,村",
    "四川-内江市-资中县": "乡,镇,村",
    "四川-内江市-隆昌县": "乡,镇,村",
    "四川-乐山市-市中区": "乡,镇,村",
    "四川-乐山市-沙湾区": "乡,镇,村",
    "四川-乐山市-五通桥区": "乡,镇,村",
    "四川-乐山市-犍为县": "乡,镇,村",
    "四川-乐山市-井研县": "乡,镇,村",
    "四川-乐山市-夹江县": "乡,镇,村",
    "四川-乐山市-沐川县": "乡,镇,村",
    "四川-乐山市-马边彝族自治县": "乡,镇,村",
    "四川-乐山市-峨眉山市": "乡,镇,村",
    "四川-南充市-顺庆区": "乡,镇,村",
    "四川-南充市-高坪区": "乡,镇,村",
    "四川-南充市-嘉陵区": "乡,镇,村",
    "四川-南充市-南部县": "乡,镇,村",
    "四川-南充市-营山县": "乡,镇,村",
    "四川-南充市-蓬安县": "乡,镇,村",
    "四川-南充市-仪陇县": "乡,镇,村",
    "四川-南充市-西充县": "乡,镇,村",
    "四川-南充市-阆中市": "乡,镇,村",
    "四川-眉山市-东坡区": "乡,镇,村",
    "四川-眉山市-仁寿县": "乡,镇,村",
    "四川-眉山市-彭山县": "公义镇,黄丰镇,江口镇,谢家镇,牧马镇,保胜乡,锦江乡,武阳乡,义和乡",
    "四川-眉山市-洪雅县": "乡,镇,村",
    "四川-眉山市-丹棱县": "乡,镇,村",
    "四川-眉山市-青神县": "乡,镇,村",
    "四川-宜宾市-翠屏区": "乡,镇,村",
    "四川-宜宾市-宜宾县": "乡,镇,村",
    "四川-宜宾市-南溪县": "乡,镇,村",
    "四川-宜宾市-江安县": "乡,镇,村",
    "四川-宜宾市-长宁县": "乡,镇,村",
    "四川-宜宾市-高县": "沙河镇,嘉乐镇,大窝镇,蕉村镇,可久镇,来复镇,月江镇,胜天镇,复兴镇,趱滩乡,羊田乡,落润乡,潆溪乡,庆岭乡,双河乡,四烈乡",
    "四川-宜宾市-珙县": "乡,镇,村",
    "四川-宜宾市-筠连县": "乡,镇,村",
    "四川-宜宾市-兴文县": "乡,镇,村",
    "四川-宜宾市-屏山县": "乡,镇,村",
    "四川-广安市-广安区": "乡,镇,村",
    "四川-广安市-市辖区": "乡,镇,村",
    "四川-广安市-岳池县": "乡,镇,村",
    "四川-广安市-武胜县": "乡,镇,村",
    "四川-广安市-邻水县": "乡,镇,村",
    "四川-广安市-华蓥市": "乡,镇,村",
    "四川-达州市-通川区": "乡,镇,村",
    "四川-达州市-达县": "乡,镇,村",
    "四川-达州市-宣汉县": "乡,镇,村",
    "四川-达州市-大竹县": "乡,镇,村",
    "四川-达州市-渠县": "乡,镇,村",
    "四川-雅安市-雨城区": "乡,镇,村",
    "四川-雅安市-名山县": "乡,镇,村",
    "四川-雅安市-荥经县": "乡,镇,村",
    "四川-雅安市-汉源县": "乡,镇,村",
    "四川-雅安市-石棉县": "乡,镇,村",
    "四川-雅安市-天全县": "乡,镇,村",
    "四川-雅安市-芦山县": "乡,镇,村",
    "四川-雅安市-宝兴县": "乡,镇,村",
    "四川-巴中市-巴州区": "乡,镇,村",
    "四川-巴中市-平昌县": "乡,镇,村",
    "四川-资阳市-雁江区": "乡,镇,村",
    "四川-资阳市-乐至县": "乡,镇,村",
    "四川-资阳市-简阳市": "乡,镇,村",
    "四川-凉山州-西昌市": "乡,镇,村",
    "四川-凉山州-盐源县": "乡,镇,村",
    "四川-凉山州-德昌县": "乡,镇,村",
    "四川-凉山州-会理县": "乡,镇,村",
    "四川-凉山州-会东县": "乡,镇,村",
    "四川-凉山州-宁南县": "乡,镇,村",
    "四川-凉山州-雷波县": "乡,镇,村",
    "贵州-贵阳市-南明区": "乡,镇,村",
    "贵州-贵阳市-云岩区": "乡,镇,村",
    "贵州-贵阳市-花溪区": "乡,镇,村",
    "贵州-贵阳市-乌当区": "乡,镇,村",
    "贵州-贵阳市-白云区": "乡,镇,村",
    "贵州-贵阳市-小河区": "乡,镇,村",
    "贵州-贵阳市-金阳开发区": "乡,镇,村",
    "贵州-贵阳市-清镇市": "乡,镇,村",
    "贵州-六盘水市-钟山区": "乡,镇,村",
    "贵州-六盘水市-六枝特区": "乡,镇,村",
    "贵州-遵义市-红花岗区": "高坪镇,新铺镇,巷口镇,南宫山,南白镇,凯山,信箱",
    "贵州-遵义市-汇川区": "高坪镇,新铺镇,巷口镇,南宫山,南白镇,凯山,信箱",
    "贵州-遵义市-仁怀市": "乡,镇,村",
    "贵州-安顺市-西秀区": "乡,镇,村",
    "贵州-安顺市-平坝县": "乡,镇,村",
    "贵州-安顺市-普定县": "乡,镇,村",
    "贵州-安顺市-镇宁布依族苗族自治县": "乡,镇,村",
    "贵州-铜仁地区-铜仁市": "乡,镇,村",
    "贵州-铜仁地区-沿河土家族自治县": "乡,镇,村",
    "贵州-黔西南州-兴义市": "乡,镇,村",
    "贵州-黔西南州-兴仁县": "乡,镇,村",
    "贵州-黔西南州-贞丰县": "乡,镇,村",
    "贵州-黔西南州-册亨县": "乡,镇,村",
    "贵州-黔西南州-安龙县": "乡,镇,村",
    "贵州-毕节地区-毕节市": "乡,镇,村",
    "贵州-毕节地区-大方县": "乡,镇,村",
    "贵州-毕节地区-黔西县": "乡,镇,村",
    "贵州-毕节地区-金沙县": "乡,镇,村",
    "贵州-毕节地区-织金县": "乡,镇,村",
    "贵州-毕节地区-威宁彝族回族苗族自治县": "乡,镇,村",
    "贵州-毕节地区-赫章县": "乡,镇,村",
    "贵州-黔东南州-凯里市": "鸭塘镇,三棵树镇,旁海镇,乡,村",
    "贵州-黔东南州-黄平县": "乡,镇,村",
    "贵州-黔东南州-施秉县": "乡,镇,村",
    "贵州-黔东南州-三穗县": "乡,镇,村",
    "贵州-黔东南州-镇远县": "乡,镇,村",
    "贵州-黔东南州-天柱县": "乡,镇,村",
    "贵州-黔东南州-剑河县": "乡,镇,村",
    "贵州-黔东南州-台江县": "乡,镇,村",
    "贵州-黔东南州-黎平县": "乡,镇,村",
    "贵州-黔东南州-榕江县": "乡,镇,村",
    "贵州-黔东南州-从江县": "乡,镇,村",
    "贵州-黔南州-都匀市": "乡,镇,村",
    "贵州-黔南州-瓮安县": "乡,镇,村",
    "贵州-黔南州-独山县": "乡,镇,村",
    "贵州-黔南州-惠水县": "乡,镇,村",
    "云南-昆明市-五华区": "乡,镇,村",
    "云南-昆明市-盘龙区": "乡,镇,村",
    "云南-昆明市-官渡区": "乡,镇,村",
    "云南-昆明市-西山区": "乡,镇,村",
    "云南-昆明市-东川区": "乡,镇,村",
    "云南-昆明市-呈贡县": "乡,镇,村",
    "云南-昆明市-富民县": "乡,镇,村",
    "云南-昆明市-宜良县": "乡,镇,村",
    "云南-昆明市-石林彝族自治县": "乡,镇,村",
    "云南-昆明市-嵩明县": "乡,镇,村",
    "云南-昆明市-禄劝彝族苗族自治县": "乡,镇,村",
    "云南-昆明市-安宁市": "乡,镇,村",
    "云南-曲靖市-麒麟区": "乡,镇,村",
    "云南-曲靖市-陆良县": "乡,镇,村",
    "云南-曲靖市-罗平县": "乡,镇,村",
    "云南-曲靖市-宣威市": "乡,镇,村",
    "云南-玉溪市-红塔区": "乡,村",
    "云南-玉溪市-江川县": "乡,镇,村",
    "云南-玉溪市-澄江县": "乡,镇,村",
    "云南-玉溪市-通海县": "乡,镇,村",
    "云南-玉溪市-华宁县": "乡,镇,村",
    "云南-玉溪市-易门县": "乡,镇,村",
    "云南-玉溪市-峨山彝族自治县": "乡,镇,村",
    "云南-玉溪市-新平彝族傣族自治县": "乡,镇,村",
    "云南-玉溪市-元江哈尼族彝族傣族自治县": "乡,镇,村",
    "云南-保山市-隆阳区": "乡,镇,村",
    "云南-保山市-施甸县": "乡,镇,村",
    "云南-保山市-腾冲县": "乡,镇,村",
    "云南-昭通市-昭阳区": "乡,镇,村",
    "云南-丽江市-古城区": "乡,镇,村",
    "云南-楚雄州-楚雄市": "乡,镇,村",
    "云南-楚雄州-南华县": "乡,镇,村",
    "云南-楚雄州-大姚县": "乡,镇,村",
    "云南-楚雄州-元谋县": "乡,镇,村",
    "云南-楚雄州-武定县": "乡,镇,村",
    "云南-楚雄州-禄丰县": "乡,镇,村",
    "云南-红河州-个旧市": "乡,镇,村",
    "云南-红河州-开远市": "乡,镇,村",
    "云南-红河州-蒙自县": "乡,镇,村",
    "云南-红河州-建水县": "乡,镇,村",
    "云南-红河州-石屏县": "乡,镇,村",
    "云南-红河州-弥勒县": "乡,镇,村",
    "云南-红河州-泸西县": "乡,镇,村",
    "云南-文山州-文山县": "乡,镇,村",
    "云南-文山州-砚山县": "乡,镇,村",
    "云南-文山州-富宁县": "乡,镇,村",
    "云南-普洱市-思茅区": "乡,镇,村",
    "云南-普洱市-宁洱哈尼彝族自治县": "乡,镇,村",
    "云南-普洱市-景谷傣族彝族自治县": "乡,镇,村",
    "云南-西双版纳州-景洪市": "乡,镇,村",
    "云南-大理州-大理市": "乡,镇,村",
    "云南-大理州-祥云县": "乡,镇,村",
    "云南-大理州-弥渡县": "乡,镇,村",
    "云南-大理州-鹤庆县": "乡,镇,村",
    "云南-德宏州-瑞丽市": "乡,镇,村",
    "云南-临沧市-临翔区": "乡,镇,村",
    "云南-临沧市-凤庆县": "乡,镇,村",
    "云南-临沧市-云县": "乡,镇,村",
    "云南-临沧市-耿马傣族佤族自治县": "乡,镇,村",
    "西藏-拉萨市-城关区": "乡,镇,村",
    "西藏-山南地区-乃东县": "乡,镇,村",
    "西藏-日喀则地区-亚东县": "",
    "西藏-那曲地区-那曲县": "乡,镇,村",
    "西藏-林芝地区-林芝县": "乡,镇,村",
    "陕西-西安市-新城区": "",
    "陕西-西安市-碑林区": "",
    "陕西-西安市-莲湖区": "",
    "陕西-西安市-灞桥区": "",
    "陕西-西安市-未央区": "",
    "陕西-西安市-雁塔区": "",
    "陕西-西安市-阎良区": "",
    "陕西-西安市-临潼区": "",
    "陕西-西安市-长安区": "",
    "陕西-西安市-户县": "乡,镇,村",
    "陕西-西安市-高陵县": "乡,镇,村",
    "陕西-铜川市-王益区": "乡,镇,村",
    "陕西-铜川市-印台区": "乡,镇,村",
    "陕西-铜川市-耀州区": "乡,镇,村",
    "陕西-宝鸡市-渭滨区": "乡,镇,村",
    "陕西-宝鸡市-金台区": "乡,镇,村",
    "陕西-宝鸡市-陈仓区": "乡,镇,村",
    "陕西-宝鸡市-凤翔县": "乡,镇,村",
    "陕西-宝鸡市-眉县": "乡,镇,村",
    "陕西-咸阳市-秦都区": "乡,镇,村",
    "陕西-咸阳市-杨凌区": "乡,镇,村",
    "陕西-咸阳市-渭城区": "乡,镇,村",
    "陕西-咸阳市-三原县": "乡,镇,村",
    "陕西-咸阳市-泾阳县": "乡,镇,村",
    "陕西-咸阳市-乾县": "乡,镇,村",
    "陕西-咸阳市-礼泉县": "乡,镇,村",
    "陕西-渭南市-临渭区": "乡,镇,村",
    "陕西-渭南市-大荔县": "乡,镇,村",
    "陕西-渭南市-华阴市": "乡,镇,村",
    "陕西-汉中市-汉台区": "乡,镇,村",
    "陕西-汉中市-南郑县": "乡,镇,村",
    "陕西-汉中市-城固县": "乡,镇,村",
    "陕西-汉中市-洋县": "乡,镇,村",
    "陕西-汉中市-西乡县": "乡,镇,村",
    "陕西-汉中市-勉县": "乡,镇,村",
    "陕西-汉中市-宁强县": "乡,镇,村",
    "陕西-汉中市-略阳县": "乡,镇,村",
    "陕西-安康市-汉滨区": "乡,镇,村",
    "陕西-安康市-汉阴县": "乡,镇,村",
    "陕西-安康市-石泉县": "乡,镇,村",
    "陕西-安康市-紫阳县": "乡,镇,村",
    "陕西-安康市-岚皋县": "乡,镇,村",
    "陕西-安康市-平利县": "乡,镇,村",
    "陕西-安康市-旬阳县": "乡,镇,村",
    "青海-西宁市-城东区": "东川,西川,北川,南川,乡,镇,村",
    "青海-西宁市-城中区": "东川,西川,北川,南川,乡,镇,村",
    "青海-西宁市-城西区": "东川,西川,北川,南川,乡,镇,村",
    "青海-西宁市-城北区": "东川,西川,北川,南川,乡,镇,村",
    "青海-西宁市-大通回族土族自治县": "乡,镇,村",
    "宁夏-银川市-兴庆区": "乡,镇,村",
    "宁夏-银川市-西夏区": "乡,镇,村",
    "宁夏-银川市-金凤区": "乡,镇,村",
    "宁夏-石嘴山市-大武口区": "乡,镇,村",
    "宁夏-石嘴山市-惠农区": "乡,镇,村",
    "新疆-乌鲁木齐市-天山区": "乡,镇,村,团,场",
    "新疆-乌鲁木齐市-沙依巴克区": "乡,镇,村,团,场",
    "新疆-乌鲁木齐市-新市区": "乡,镇,村,团,场",
    "新疆-乌鲁木齐市-水磨沟区": "乡,镇,村,团,场",
    "新疆-乌鲁木齐市-头屯河区": "乡,镇,村,团,场",
    "新疆-乌鲁木齐市-达坂城区": "乡,镇,村,团,场",
    "新疆-乌鲁木齐市-米东区": "乡,镇,村,团,场",
    "新疆-克拉玛依市-独山子区": "乡,镇,村,团,场",
    "新疆-克拉玛依市-克拉玛依区": "乡,镇,村,团,场",
    "新疆-克拉玛依市-白碱滩区": "乡,镇,村,团,场",
    "新疆-克拉玛依市-乌尔禾区": "乡,镇,村,团,场",
    "新疆-吐鲁番地区-吐鲁番市": "乡,镇,村,团,场",
    "新疆-吐鲁番地区-鄯善县": "乡,镇,村,团,场",
    "新疆-昌吉州-昌吉市": "乡,镇,村,团,场",
    "新疆-昌吉州-阜康市": "乡,镇,村,团,场",
    "新疆-昌吉州-呼图壁县": "乡,镇,村,团,场",
    "新疆-昌吉州-玛纳斯县": "乡,镇,村,团,场",
    "新疆-博尔塔拉州-博乐市": "乡,镇,村,团,场",
    "新疆-巴音郭楞州-库尔勒市": "乡,镇,村,团,场",
    "新疆-克孜勒苏州-阿图什市": "乡,镇,村,团,场",
    "新疆-喀什地区-喀什市": "乡,镇,村,团,场",
    "新疆-和田地区-和田市": "乡,镇,村,团,场",
    "新疆-和田地区-和田县": "乡,镇,村,团,场",
    "新疆-伊犁州-奎屯市": "乡,镇,村,团,场",
    "新疆-塔城地区-沙湾县": "乡,镇,村,团,场",
    "新疆-省直辖-石河子市": "乡,镇,村,团,场",
    "新疆-省直辖-五家渠市": "乡,镇,村,团,场",
    "甘肃-兰州市-城关区": "窦家山,鱼儿沟,伏龙坪,雷坛河,华林山,大滩,流沙公路,乡,村",
    "甘肃-兰州市-七里河区": "窦家山,鱼儿沟,伏龙坪,雷坛河,华林山,大滩,流沙公路,乡,村",
    "甘肃-兰州市-西固区": "窦家山,鱼儿沟,伏龙坪,雷坛河,华林山,大滩,流沙公路,乡,村",
    "甘肃-兰州市-安宁区": "窦家山,鱼儿沟,伏龙坪,雷坛河,华林山,大滩,流沙公路,乡,村",
    "甘肃-金昌市-金川区": "乡,镇,村",
    "甘肃-白银市-景泰县": "乡,镇,村",
    "甘肃-天水市-秦州区": "乡,镇,村",
    "甘肃-天水市-麦积区": "乡,镇,村",
    "甘肃-天水市-甘谷县": "乡,镇,村",
    "甘肃-张掖市-甘州区": "乡,镇,村",
    "甘肃-平凉市-崆峒区": "乡,镇,村",
    "甘肃-酒泉市-肃州区": "乡,镇,村",
    "甘肃-酒泉市-瓜州县": "乡,镇,村",
    "甘肃-庆阳市-西峰区": "乡,镇,村",
    "甘肃-定西市-安定区": "乡,镇,村",
    "甘肃-定西市-陇西县": "乡,镇,村",
    "甘肃-临夏州-临夏市": "乡,镇,村",
    "甘肃-临夏州-积石山保安族东乡族撒拉族自治县": "乡,镇,村",
    "甘肃-甘南州-合作市": "乡,镇,村",
    "陕西-榆林市-榆阳区": "乡,镇,村",
    "内蒙古-呼和浩特市-新城区": "机场路、部队、机密单位、党政大楼、乡、镇、村",
    "内蒙古-呼和浩特市-回民区": "机场路、部队、机密单位、党政大楼、乡、镇、村",
    "内蒙古-呼和浩特市-玉泉区": "机场路、部队、机密单位、党政大楼、乡、镇、村",
    "内蒙古-呼和浩特市-赛罕区": "机场路、部队、机密单位、党政大楼、乡、镇、村"
}; (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("yxp.ui"),
    ut = NEJ.P("yxp.ut"),
    j = NEJ.P("nej.j"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace>{line-height:17px;font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;color:#777;}.#<uispace> .t0,.#<uispace> .t1{font-size:16px;width:775px;margin-top:10px;table-layout:fixed;border-collapse:collapse;border:0px;text-align:left;}.#<uispace> .t td{padding:7px 0px;}.#<uispace> .t input.input1{font-size:14px;border:1px solid #ccc;height:23px;line-height:23px;width:135px;color:#666;}.#<uispace> .t input.w350{width:350px;}.#<uispace> .t input.w60{width:60px;}.#<uispace> .t select.select1{border:1px solid #ccc;height:21px;width:100px;text-align:center;}.#<uispace> .t select.select2{width:120px;}.#<uispace> .t input.c-btn{font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;cursor:pointer;margin-top:50px;text-align:center;font-size:18px;width:125px;height:34px;line-height:34px;background:url(http://st1.yxp.126.net/rsc/img/bg-x.png) 9999px 9999px repeat-x;border:0px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> .t input.sure{margin-right:15px;color:#fff;background-position:0 -50px;}.#<uispace> .t input.sure:hover{background-position:0 -100px;border-left:1px #759dad solid;border-right:1px #759dad solid;}.#<uispace> .t input.cancel{color:#767676;background-position:0 -150px;border-left:1px #d0d0d0 solid;border-right:1px #d0d0d0 solid;_border:0px;}.#<uispace> .t input.cancel:hover{background-position:0 -200px;}.#<uispace> .t .error{color:#d35300;font-size:12px;}.#<uispace> .t .tip{position:absolute;display:block;line-height:33px;height:33px;left:280px;top:-25px;}.#<uispace> .t .tip .tl{display:block;width:8px;height:33px;border:1px solid #adadad;border-left:0px;float:left;}.#<uispace> .t0 .tip2 {top:-7px;}.#<uispace> .t0 .tip2 .tl{border-color:#fff;}');
    var zZ = e.eY('<div class="' + ec + '"><div class="f-pr"><form><table class="mark-table t t0"><tr><td width="140" class="f-tar">*收货人：</td><td width="600"><input name="consignee" class="input1"/><span class="error"></span></td></tr><tr><td class="f-tar">*所在地区：</td><td><select name="province" class="select1"><option selected="selected" value="" >-请选择省-</option></select>&nbsp;&nbsp;<select name="city"  class="select1"><option selected="selected" value="">-请选择市-</option></select>&nbsp;&nbsp;<select name="section"  class="select1 select2"><option selected="selected" value="">-请选择区-</option></select><span class="error"></span></td></tr><tr><td class="f-tar">*详细地址：</td><td><input name="address" class="input1  w350"/><span class="error"></span></td></tr><tr><td class="f-tar"><span class="you">手机号码</span>：</td><td><input name="mobile" class="input1"/><span class="error"></span></td></tr><tr><td class="f-tar"><span class="you">固定电话</span>：</td><td><div class="f-pr"><input name="tel" class="input1"/><span class="error">&nbsp;格式:区号-号码[-分机号]</span><span class="tip"><span class="error"></span><span class="tl"></span>&nbsp;[至少填写一个，用于接收订单短信及快递通知]</span></div></td></tr><tr><td class="f-tar">*电子邮箱：</td><td><div class="f-pr"><input name="email" class="input1"/><span class="error"></span><span class="tip tip2"><span class="tl"></span>&nbsp;[用于接收订单状态信息]</span></div></td></tr><tr><td class="f-tar" colspan="2"><input type="button" class="c-btn sure " name="submit" value="确&nbsp;&nbsp;定"/><input class="c-btn cancel mark-close" type="button" value="取&nbsp;消"/></td></tr></table></form></div>');
    p.vk = NEJ.C();
    cH = p.vk.dy(p.gx, !0);
    dc = p.vk.dG;
    cH.zW = function(cz) {
        cz.title = "填写收货人地址";
        this.fg = cz.sureCallBack;
        this.CU(cz)
    };
    cH.dX = function(cz) {
        dc.dX.apply(this, arguments);
        var eD = e.gn(zZ);
        this.hQ().appendChild(eD);
        this.cO = eD.getElementsByTagName("form")[0];
        this.eC = p.g_.ep({
            opacity: .6,
            bgc: "#000",
            parent: document.body
        });
        this.uU = cz.consign || {}
    };
    cH.eh = function(cz) {
        dc.eh.apply(this, arguments);
        v.cM(this.cO["submit"], "click", this.kh.cC(this))
    };
    cH.gB = function() {
        var pZ = true;
        if (!this.cO["consignee"].value.trim()) {
            this.cO["consignee"].nextSibling.innerHTML = "&nbsp;不能为空";
            pZ = false
        } else {
            this.cO["consignee"].nextSibling.innerHTML = ""
        }
        if (!this.cO["address"].value.trim()) {
            this.cO["address"].nextSibling.innerHTML = "&nbsp;不能为空";
            pZ = false
        } else {
            this.cO["address"].nextSibling.innerHTML = ""
        }
        if (this.cO["province"].selectedIndex == 0 || this.cO["city"].selectedIndex == 0 || this.cO["section"].selectedIndex == 0) {
            this.cO["section"].nextSibling.innerHTML = "&nbsp;请选择地区";
            pZ = false
        } else {
            this.cO["section"].nextSibling.innerHTML = ""
        }
        if (!this.cO["mobile"].value.trim() && !this.cO["tel"].value.trim()) {
            this.cO["mobile"].nextSibling.innerHTML = "&nbsp;请填写一个联系电话";
            pZ = false
        } else if (this.cO["mobile"].value.trim() && !/^1\d{10}$/.test(this.cO["mobile"].value.trim())) {
            this.cO["mobile"].nextSibling.innerHTML = "&nbsp;请输入正确手机号";
            pZ = false
        } else if (this.cO["tel"].value.trim() && !/^((\d{3,4})-)(\d{7,8})(-(\d{1,}))?$/.test(this.cO["tel"].value.trim())) {
            this.cO["mobile"].nextSibling.innerHTML = "&nbsp;请输入正确固话";
            pZ = false
        } else {
            this.cO["mobile"].nextSibling.innerHTML = ""
        }
        if (!this.cO["email"].value.trim() || !/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/.test(this.cO["email"].value.trim())) {
            this.cO["email"].nextSibling.innerHTML = this.cO["email"].value.trim() == "" ? "email地址不能为空": "&nbsp;请输入正确email地址";
            pZ = false
        } else {
            this.cO["email"].nextSibling.innerHTML = ""
        }
        return pZ ? {
            id: this.uU.id || 0,
            at: 0,
            co: "中国",
            cse: this.cO["consignee"].value.trim(),
            pro: this.cO["province"].options[this.cO["province"].selectedIndex].value,
            ci: this.cO["city"].options[this.cO["city"].selectedIndex].value,
            se: this.cO["section"].options[this.cO["section"].selectedIndex].value,
            ad: this.cO["address"].value.trim(),
            mob: this.cO["mobile"].value.trim(),
            tel: this.cO["tel"].value.trim(),
            smail: this.cO["email"].value.trim()
        }: pZ
    };
    cH.kh = function() {
        var uV = this.gB();
        if (uV) {
            if (uV.id != 0) {
                j.ni("consignB.updateConsign", {
                    path: "http://yxp.163.com/dwr/call/plaincall/",
                    param: [uV],
                    onload: this.xt.cC(this)
                })
            } else j.ni("consignB.addConsign", {
                path: "http://yxp.163.com/dwr/call/plaincall/",
                param: [uV],
                onload: this.xt.cC(this)
            })
        }
    };
    cH.xt = function(uV) {
        this.uU = uV;
        this.dZ();
        if (this.fg) this.fg({
            consign: this.uU
        })
    };
    cH.dH = function() {
        this.eC.dH();
        dc.dH.apply(this, arguments);
        this.vr();
        if (this.uU.id) {
            this.gB()
        }
        return this
    };
    cH.vr = function() {
        this.cO["consignee"].value = this.uU.cse || "",
        this.cO["address"].value = this.uU.ad || "",
        this.cO["mobile"].value = this.uU.mob || "",
        this.cO["tel"].value = this.uU.tel || "",
        this.cO["email"].value = this.uU.smail || "",
        this.og = ut.vi.dz({
            pro: this.uU.pro || "",
            city: this.uU.ci || "",
            sec: this.uU.se || "",
            sPro: this.cO["province"],
            sCity: this.cO["city"],
            sSec: this.cO["section"]
        });
        return this
    };
    cH.dZ = function() {
        this.eC.dZ();
        dc.dZ.apply(this, arguments);
        return this
    }
})(); (function() {
    var e = NEJ.P("nej.e"),
    v = NEJ.P("nej.v"),
    p = NEJ.P("yxp.ui"),
    ut = NEJ.P("yxp.ut"),
    cH = null,
    dc = null;
    var ec = e.fR('.#<uispace>{line-height:17px;font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;color:#777;}.#<uispace> .tab{font-size:14px;height:27px;border-bottom:1px solid #ccc;}.#<uispace> .tab .tab0,.#<uispace> .tab .tab1{cursor:pointer;height:27px;line-height:27px;background:#e3e3e3;border:1px solid #ccc;padding:0px 15px;position:absolute;top:-1px;}.#<uispace> .tab .tab0{left:50px;}.#<uispace> .tab .tab1{left:150px;}.#<uispace> .tab .sel {cursor:default;background:#fff;border-bottom:1px solid #fff;}.#<uispace> .t0,.#<uispace> .t1{font-size:16px;width:775px;margin-top:10px;table-layout:fixed;border-collapse:collapse;border:0px;text-align:left;}.#<uispace> .t1 tr.f-dn{display:table-row;}.#<uispace> .t td{padding:5px 0px;}.#<uispace> .t input.input1{border:1px solid #ccc;height:23px;line-height:23px;width:135px;color:#666;font-size:14px;}.#<uispace> .t input.w350{width:350px;}.#<uispace> .t input.w60{width:60px;}.#<uispace> .t select.select1{border:1px solid #ccc;height:21px;width:100px;text-align:center;}.#<uispace> .t select.select2{width:120px;}.#<uispace> input.c-btn{font-family:"Microsoft Yahei",simsun,\\5b8b\\4f53;cursor:pointer;margin-top:50px;text-align:center;font-size:18px;width:125px;height:34px;line-height:34px;background:url(http://st1.yxp.126.net/rsc/img/bg-x.png) 9999px 9999px repeat-x;border:0px;border-radius:2px;-moz-border-radius:2px;-webkit-border-radius:2px;}.#<uispace> input.sure{margin-right:15px;color:#fff;background-position:0 -50px;}.#<uispace> input.sure:hover{background-position:0 -100px;border-left:1px #759dad solid;border-right:1px #759dad solid;}.#<uispace> input.cancel{color:#767676;background-position:0 -150px;border-left:1px #d0d0d0 solid;border-right:1px #d0d0d0 solid;_border:0px;}.#<uispace> input.cancel:hover{background-position:0 -200px;}.#<uispace> .t .error{color:#d35300;font-size:12px;}.#<uispace> .t .tip3{font-size:14px;}.#<uispace> .t .tip{position:absolute;display:block;line-height:33px;height:33px;left:285px;top:-25px;}.#<uispace> .t .tip .tl{display:block;width:8px;height:33px;border:1px solid #adadad;border-left:0px;float:left;}.#<uispace> .t0 .tip2 {top:-7px;}.#<uispace> .t0 .tip2 .tl{border-color:#fff;}');
    var zZ = e.eY('<div class="' + ec + '"><div class="tab f-pr"><div class="mark-tab tab0 sel">普通发票</div><div class="mark-tab tab1">增值税发票</div></div><form><div class="tain"><table class="mark-table t t0"><tr><td width="140" class="f-tar">发票抬头：</td><td width="600"><input name="title" class="input1"/><span class="error"></span></td></tr><tr class=" f-dn"><td class="f-tar">公司税号：</td><td><input name="comTaxNum" class="input1 w350"/><span class="error"></span></td></tr><tr class=" f-dn"><td class="f-tar">公司注册地址：</td><td><input name="comRegAddress" class="input1   w350"/><span class="error"></span></td></tr><tr class=" f-dn"><td class="f-tar">公司注册电话：</td><td><input name="comTel" class="input1"/><span class="error"> 格式:区号-号码[-分机号]</span></td></tr><tr class=" f-dn"><td class="f-tar">公司开户银行名称：</td><td><input name="comBankName" class="input1 w350"/><span class="error"></span></td></tr><tr class=" f-dn"><td class="f-tar">公司开户银行账号：</td><td><input name="comBankNun" class="input1 w350"/><span class="error"></span></td></tr><tr class=" f-dn"><td class="f-tal tip3" colspan="2"><span class="f-fw1">重要提示:</span>首次开具增值税专用发票的客户需传真加盖公章的营业执照副本、税务登记证副本、一般纳税人资格证书、<br/>银行开户许可证复印件至我司增值税开票专员。 传真号（86571）89852001-2656</td></tr><tr><td class="f-tar">收件人：</td><td><input name="consignee" class="input1"/><span class="error"></span></td></tr><tr><td class="f-tar">所在地区：</td><td><select name="province" class="select1"><option selected="selected" value="" >-请选择省-</option></select>&nbsp;&nbsp;<select name="city"  class="select1"><option selected="selected" value="">-请选择市-</option></select>&nbsp;&nbsp;<select name="section"  class="select1 select2"><option selected="selected" value="">-请选择区-</option></select><span class="error"></span></td></tr><tr><td class="f-tar">详细地址：</td><td><input name="address" class="input1 w350"/><span class="error"></span></td></tr><tr><td class="f-tar">邮政编码：</td><td><input name="zipcode" class="input1 "/><span class="error"></span></td></tr><tr><td class="f-tar">手机号码：</td><td><input name="mobile" class="input1"/><span class="error"></span></td></tr><tr><td class="f-tar">固定电话：</td><td><div class="f-pr"><input name="tel" class="input1"/><span class="error">&nbsp;格式:区号-号码[-分机号]</span><span class="tip"><span class="error"></span><span class="tl"></span>&nbsp;[至少填写一个]</span></div></td></tr></table></div><div class="f-tar"><input type="button" class="c-btn sure" name="submit" value="确&nbsp;&nbsp;定"/><input class="c-btn cancel mark-close" type="button" value="取&nbsp;消"/></div></form></div>');
    p.lb = NEJ.C();
    cH = p.lb.dy(p.gx, !0);
    dc = p.lb.dG;
    cH.zW = function(cz) {
        this.fg = cz.sureCallBack;
        this.CU(cz)
    };
    cH.dX = function(cz) {
        dc.dX.apply(this, arguments);
        var eD = e.gn(zZ);
        this.hQ().appendChild(eD);
        this.cO = eD.getElementsByTagName("form")[0];
        this.eC = p.g_.dz({
            opacity: .6,
            bgc: "#000",
            parent: document.body
        });
        this.db = cz.invoice || {};
        this.vh = 0
    };
    cH.eh = function(cz) {
        dc.eh.apply(this, arguments);
        var uc = e.cT(this.cN, "mark-tab");
        v.cM(uc[0], "click", this.ny.cC(this, uc, 0));
        v.cM(uc[1], "click", this.ny.cC(this, uc, 1));
        v.cM(this.cO["submit"], "click", this.kh.cC(this))
    };
    cH.ny = function(uc, cX) {
        this.vh = cX;
        e.nf(uc[(cX + 1) % 2], "sel");
        e.dw(uc[cX], "sel");
        e.lc(e.cT(this.cN, "mark-table")[0], "t" + (cX + 1) % 2, "t" + cX);
        this.cN.style.marginTop = "-" + parseInt(this.cN.offsetHeight / 2) + "px"
    };
    cH.gB = function() {
        var pZ = true;
        var mR = [this.cO["title"], this.cO["consignee"], this.cO["address"]];
        if (this.vh == 1) {
            mR.push(this.cO["comTaxNum"], this.cO["comRegAddress"], this.cO["comBankName"], this.cO["comBankNun"]);
            if (this.cO["comTel"].value.trim() && !/^((\d{3,4})-)(\d{7,8})(-(\d{1,}))?$/.test(this.cO["comTel"].value)) {
                this.cO["comTel"].nextSibling.innerHTML = "&nbsp;请输入正确固话";
                pZ = false
            }
        }
        for (var i = 0; i < mR.length; i++) {
            if (!mR[i].value.trim()) {
                mR[i].nextSibling.innerHTML = "&nbsp;不能为空";
                pZ = false
            } else {
                mR[i].nextSibling.innerHTML = ""
            }
        }
        if (!/\d{6}/.test(this.cO["zipcode"].value.trim())) {
            this.cO["zipcode"].nextSibling.innerHTML = "&nbsp;请填写正确邮政编码";
            pZ = false
        } else {
            this.cO["zipcode"].nextSibling.innerHTML = ""
        }
        if (this.cO["province"].selectedIndex == 0 || this.cO["city"].selectedIndex == 0 || this.cO["section"].selectedIndex == 0) {
            this.cO["section"].nextSibling.innerHTML = "&nbsp;请选择地区";
            pZ = false
        } else {
            this.cO["section"].nextSibling.innerHTML = ""
        }
        if (!this.cO["mobile"].value.trim() && !this.cO["tel"].value.trim()) {
            this.cO["mobile"].nextSibling.innerHTML = "&nbsp;请填写一个联系电话";
            pZ = false
        } else if (this.cO["mobile"].value.trim() && !/^1((3[0-9])|(5[0-35-9])|(8[025-9]))\d{8}$/.test(this.cO["mobile"].value)) {
            this.cO["mobile"].nextSibling.innerHTML = "&nbsp;请输入正确手机号";
            pZ = false
        } else if (this.cO["tel"].value.trim() && !/^((\d{3,4})-)(\d{7,8})(-(\d{1,}))?$/.test(this.cO["tel"].value)) {
            this.cO["mobile"].nextSibling.innerHTML = "&nbsp;请输入正确固话";
            pZ = false
        } else {
            this.cO["mobile"].nextSibling.innerHTML = ""
        }
        return pZ ? {
            type: this.vh,
            title: this.cO["title"].value.trim(),
            comTaxNum: this.cO["comTaxNum"].value.trim(),
            comRegAddress: this.cO["comRegAddress"].value.trim(),
            comTel: this.cO["comTel"].value.trim(),
            comBankName: this.cO["comBankName"].value.trim(),
            comBankNun: this.cO["comBankNun"].value.trim(),
            cse: this.cO["consignee"].value.trim(),
            pro: this.cO["province"].options[this.cO["province"].selectedIndex].value,
            ci: this.cO["city"].options[this.cO["city"].selectedIndex].value,
            se: this.cO["section"].options[this.cO["section"].selectedIndex].value,
            ad: this.cO["address"].value.trim(),
            zip: this.cO["zipcode"].value.trim(),
            mob: this.cO["mobile"].value.trim(),
            tel: this.cO["tel"].value.trim()
        }: pZ
    };
    cH.kh = function() {
        var fb = this.gB();
        if (fb) {
            this.db = fb;
            this.dZ();
            if (this.fg) this.fg({
                invoice: this.db
            })
        }
    };
    cH.dH = function() {
        this.eC.dH();
        dc.dH.apply(this, arguments);
        this.Aa();
        return this
    };
    cH.Aa = function() {
        this.cO["title"].value = this.db.title || this.db.cse || "",
        this.cO["consignee"].value = this.db.cse || "",
        this.cO["address"].value = this.db.ad || "",
        this.cO["mobile"].value = this.db.mob || "",
        this.cO["tel"].value = this.db.tel || "",
        this.cO["zipcode"].value = this.db.zip || "",
        this.og = ut.vi.dz({
            pro: this.db.pro || "",
            city: this.db.ci || "",
            sec: this.db.se || "",
            sPro: this.cO["province"],
            sCity: this.cO["city"],
            sSec: this.cO["section"]
        });
        if (this.db.type == 1) {
            this.cO["comTaxNum"].value = this.db.comTaxNum || "",
            this.cO["comRegAddress"].value = this.db.comRegAddress || "",
            this.cO["comTel"].value = this.db.comTel || "",
            this.cO["comBankName"].value = this.db.comBankName || "",
            this.cO["comBankNun"].value = this.db.comBankNun || "",
            this.ny(e.cT(this.cN, "mark-tab"), 1)
        } else this.ny(e.cT(this.cN, "mark-tab"), 0);
        return this
    };
    cH.dZ = function() {
        this.eC.dZ();
        dc.dZ.apply(this, arguments);
        return this
    }
})(); (function($) {
    if (/1\.(0|1|2)\.(0|1|2)/.test($.fn.jquery) || /^1.1/.test($.fn.jquery)) {
        alert("blockUI requires jQuery v1.2.3 or later!  You are using v" + $.fn.jquery);
        return
    }
    $.fn.AR = $.fn.fadeIn;
    var noOp = function() {};
    var mode = document.documentMode || 0;
    var setExpr = $.browser.msie && ($.browser.version < 8 && !mode || mode < 8);
    var ie6 = $.browser.msie && /MSIE 6.0/.test(navigator.userAgent) && !mode;
    $.blockUI = function(opts) {
        install(window, opts)
    };
    $.unblockUI = function(opts) {
        remove(window, opts)
    };
    $.growlUI = function(title, message, timeout, onClose) {
        var $m = $('<div class="growlUI"></div>');
        if (title) $m.append("<h1>" + title + "</h1>");
        if (message) $m.append("<h2>" + message + "</h2>");
        if (timeout == undefined) timeout = 3e3;
        $.blockUI({
            message: $m,
            fadeIn: 700,
            fadeOut: 1e3,
            centerY: false,
            timeout: timeout,
            showOverlay: false,
            onUnblock: onClose,
            css: $.blockUI.defaults.growlCSS
        })
    };
    $.fn.block = function(opts) {
        return this.unblock({
            fadeOut: 0
        }).each(function() {
            if ($.css(this, "position") == "static") this.style.position = "relative";
            if ($.browser.msie) this.style.zoom = 1;
            install(this, opts)
        })
    };
    $.fn.unblock = function(opts) {
        return this.each(function() {
            remove(this, opts)
        })
    };
    $.blockUI.version = 2.38;
    $.blockUI.defaults = {
        message: "<h1>Please wait...</h1>",
        title: null,
        draggable: true,
        theme: false,
        css: {
            padding: 0,
            margin: 0,
            width: "30%",
            top: "40%",
            left: "35%",
            textAlign: "center",
            color: "#000",
            border: "3px solid #aaa",
            backgroundColor: "#fff",
            cursor: "wait"
        },
        themedCSS: {
            width: "30%",
            top: "40%",
            left: "35%"
        },
        overlayCSS: {
            backgroundColor: "#000",
            opacity: .6,
            cursor: "wait"
        },
        growlCSS: {
            width: "350px",
            top: "10px",
            left: "",
            right: "10px",
            border: "none",
            padding: "5px",
            opacity: .6,
            cursor: "default",
            color: "#fff",
            backgroundColor: "#000",
            "-webkit-border-radius": "10px",
            "-moz-border-radius": "10px",
            "border-radius": "10px"
        },
        iframeSrc: /^https/i.test(window.location.href || "") ? "javascript:false": "about:blank",
        forceIframe: false,
        baseZ: 1e3,
        centerX: true,
        centerY: true,
        allowBodyStretch: true,
        bindEvents: true,
        constrainTabKey: true,
        fadeIn: 200,
        fadeOut: 400,
        timeout: 0,
        showOverlay: true,
        focusInput: true,
        applyPlatformOpacityRules: true,
        onBlock: null,
        onUnblock: null,
        quirksmodeOffsetHack: 4,
        blockMsgClass: "blockMsg"
    };
    var pageBlock = null;
    var pageBlockEls = [];
    function install(el, opts) {
        var full = el == window;
        var msg = opts && opts.message !== undefined ? opts.message: undefined;
        opts = $.extend({},
        $.blockUI.defaults, opts || {});
        opts.overlayCSS = $.extend({},
        $.blockUI.defaults.overlayCSS, opts.overlayCSS || {});
        var css = $.extend({},
        $.blockUI.defaults.css, opts.css || {});
        var themedCSS = $.extend({},
        $.blockUI.defaults.themedCSS, opts.themedCSS || {});
        msg = msg === undefined ? opts.message: msg;
        if (full && pageBlock) remove(window, {
            fadeOut: 0
        });
        if (msg && typeof msg != "string" && (msg.parentNode || msg.jquery)) {
            var node = msg.jquery ? msg[0] : msg;
            var data = {};
            $(el).data("blockUI.history", data);
            data.el = node;
            data.parent = node.parentNode;
            data.display = node.style.display;
            data.position = node.style.position;
            if (data.parent) data.parent.removeChild(node)
        }
        var z = opts.baseZ;
        var lyr1 = $.browser.msie || opts.forceIframe ? $('<iframe class="blockUI" style="z-index:' + z+++';display:none;border:none;margin:0;padding:0;position:absolute;width:100%;height:100%;top:0;left:0" src="' + opts.iframeSrc + '"></iframe>') : $('<div class="blockUI" style="display:none"></div>');
        var lyr2 = opts.theme ? $('<div class="blockUI blockOverlay ui-widget-overlay" style="z-index:' + z+++';display:none"></div>') : $('<div class="blockUI blockOverlay" style="z-index:' + z+++';display:none;border:none;margin:0;padding:0;width:100%;height:100%;top:0;left:0"></div>');
        var lyr3, s;
        if (opts.theme && full) {
            s = '<div class="blockUI ' + opts.blockMsgClass + ' blockPage ui-dialog ui-widget ui-corner-all" style="z-index:' + z + ';display:none;position:fixed">' + '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">' + (opts.title || "&nbsp;") + "</div>" + '<div class="ui-widget-content ui-dialog-content"></div>' + "</div>"
        } else if (opts.theme) {
            s = '<div class="blockUI ' + opts.blockMsgClass + ' blockElement ui-dialog ui-widget ui-corner-all" style="z-index:' + z + ';display:none;position:absolute">' + '<div class="ui-widget-header ui-dialog-titlebar ui-corner-all blockTitle">' + (opts.title || "&nbsp;") + "</div>" + '<div class="ui-widget-content ui-dialog-content"></div>' + "</div>"
        } else if (full) {
            s = '<div class="blockUI ' + opts.blockMsgClass + ' blockPage" style="z-index:' + z + ';display:none;position:fixed"></div>'
        } else {
            s = '<div class="blockUI ' + opts.blockMsgClass + ' blockElement" style="z-index:' + z + ';display:none;position:absolute"></div>'
        }
        lyr3 = $(s);
        if (msg) {
            if (opts.theme) {
                lyr3.css(themedCSS);
                lyr3.addClass("ui-widget-content")
            } else lyr3.css(css)
        }
        if (!opts.theme && (!opts.applyPlatformOpacityRules || !($.browser.mozilla && /Linux/.test(navigator.platform)))) lyr2.css(opts.overlayCSS);
        lyr2.css("position", full ? "fixed": "absolute");
        if ($.browser.msie || opts.forceIframe) lyr1.css("opacity", 0);
        var layers = [lyr1, lyr2, lyr3],
        $par = full ? $("body") : $(el);
        $.each(layers,
        function() {
            this.appendTo($par)
        });
        if (opts.theme && opts.draggable && $.fn.draggable) {
            lyr3.draggable({
                handle: ".ui-dialog-titlebar",
                cancel: "li"
            })
        }
        var expr = setExpr && (!$.boxModel || $("object,embed", full ? null: el).length > 0);
        if (ie6 || expr) {
            if (full && opts.allowBodyStretch && $.boxModel) $("html,body").css("height", "100%");
            if ((ie6 || !$.boxModel) && !full) {
                var t = sz(el, "borderTopWidth"),
                l = sz(el, "borderLeftWidth");
                var fixT = t ? "(0 - " + t + ")": 0;
                var fixL = l ? "(0 - " + l + ")": 0
            }
            $.each([lyr1, lyr2, lyr3],
            function(i, o) {
                var s = o[0].style;
                s.position = "absolute";
                if (i < 2) {
                    full ? s.setExpression("height", "Math.max(document.body.scrollHeight, document.body.offsetHeight) - (jQuery.boxModel?0:" + opts.quirksmodeOffsetHack + ') + "px"') : s.setExpression("height", 'this.parentNode.offsetHeight + "px"');
                    full ? s.setExpression("width", 'jQuery.boxModel && document.documentElement.clientWidth || document.body.clientWidth + "px"') : s.setExpression("width", 'this.parentNode.offsetWidth + "px"');
                    if (fixL) s.setExpression("left", fixL);
                    if (fixT) s.setExpression("top", fixT)
                } else if (opts.centerY) {
                    if (full) s.setExpression("top", '(document.documentElement.clientHeight || document.body.clientHeight) / 2 - (this.offsetHeight / 2) + (blah = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + "px"');
                    s.marginTop = 0
                } else if (!opts.centerY && full) {
                    var top = opts.css && opts.css.top ? parseInt(opts.css.top) : 0;
                    var expression = "((document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop) + " + top + ') + "px"';
                    s.setExpression("top", expression)
                }
            })
        }
        if (msg) {
            if (opts.theme) lyr3.find(".ui-widget-content").append(msg);
            else lyr3.append(msg);
            if (msg.jquery || msg.nodeType) $(msg).show()
        }
        if (($.browser.msie || opts.forceIframe) && opts.showOverlay) lyr1.show();
        if (opts.fadeIn) {
            var cb = opts.onBlock ? opts.onBlock: noOp;
            var cb1 = opts.showOverlay && !msg ? cb: noOp;
            var cb2 = msg ? cb: noOp;
            if (opts.showOverlay) lyr2.AR(opts.fadeIn, cb1);
            if (msg) lyr3.AR(opts.fadeIn, cb2)
        } else {
            if (opts.showOverlay) lyr2.show();
            if (msg) lyr3.show();
            if (opts.onBlock) opts.onBlock()
        }
        bind(1, el, opts);
        if (full) {
            pageBlock = lyr3[0];
            pageBlockEls = $(":input:enabled:visible", pageBlock);
            if (opts.focusInput) setTimeout(focus, 20)
        } else center(lyr3[0], opts.centerX, opts.centerY);
        if (opts.timeout) {
            var to = setTimeout(function() {
                full ? $.unblockUI(opts) : $(el).unblock(opts)
            },
            opts.timeout);
            $(el).data("blockUI.timeout", to)
        }
    }
    function remove(el, opts) {
        var full = el == window;
        var $el = $(el);
        var data = $el.data("blockUI.history");
        var to = $el.data("blockUI.timeout");
        if (to) {
            clearTimeout(to);
            $el.removeData("blockUI.timeout")
        }
        opts = $.extend({},
        $.blockUI.defaults, opts || {});
        bind(0, el, opts);
        var els;
        if (full) els = $("body").children().filter(".blockUI").add("body > .blockUI");
        else els = $(".blockUI", el);
        if (full) pageBlock = pageBlockEls = null;
        if (opts.fadeOut) {
            els.fadeOut(opts.fadeOut);
            setTimeout(function() {
                reset(els, data, opts, el)
            },
            opts.fadeOut)
        } else reset(els, data, opts, el)
    }
    function reset(els, data, opts, el) {
        els.each(function(i, o) {
            if (this.parentNode) this.parentNode.removeChild(this)
        });
        if (data && data.el) {
            data.el.style.display = data.display;
            data.el.style.position = data.position;
            if (data.parent) data.parent.appendChild(data.el);
            $(el).removeData("blockUI.history")
        }
        if (typeof opts.onUnblock == "function") opts.onUnblock(el, opts)
    }
    function bind(b, el, opts) {
        var full = el == window,
        $el = $(el);
        if (!b && (full && !pageBlock || !full && !$el.data("blockUI.isBlocked"))) return;
        if (!full) $el.data("blockUI.isBlocked", b);
        if (!opts.bindEvents || b && !opts.showOverlay) return;
        var events = "mousedown mouseup keydown keypress";
        b ? $(document).bind(events, opts, handler) : $(document).unbind(events, handler)
    }
    function handler(e) {
        if (e.keyCode && e.keyCode == 9) {
            if (pageBlock && e.data.constrainTabKey) {
                var els = pageBlockEls;
                var fwd = !e.shiftKey && e.target === els[els.length - 1];
                var back = e.shiftKey && e.target === els[0];
                if (fwd || back) {
                    setTimeout(function() {
                        focus(back)
                    },
                    10);
                    return false
                }
            }
        }
        var opts = e.data;
        if ($(e.target).parents("div." + opts.blockMsgClass).length > 0) return true;
        return $(e.target).parents().children().filter("div.blockUI").length == 0
    }
    function focus(back) {
        if (!pageBlockEls) return;
        var e = pageBlockEls[back === true ? pageBlockEls.length - 1 : 0];
        if (e) e.focus()
    }
    function center(el, x, y) {
        var p = el.parentNode,
        s = el.style;
        var l = (p.offsetWidth - el.offsetWidth) / 2 - sz(p, "borderLeftWidth");
        var t = (p.offsetHeight - el.offsetHeight) / 2 - sz(p, "borderTopWidth");
        if (x) s.left = l > 0 ? l + "px": "0";
        if (y) s.top = t > 0 ? t + "px": "0"
    }
    function sz(el, p) {
        return parseInt($.css(el, p)) || 0
    }
})(jQuery)